oracle特殊字符的ascii值
检查数据库级的参数设置
select * from nls_database_parameters;

检查实例级的参数设置
select * from nls_instance_parameters

检查会话级的参数设置
select * from nls_session_parameters

检查本地的语言环境
SELECT USERENV('LANGUAGE') FROM DUAL;
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
开始处理
- 查询 ’’ 的 ASCII 码
SELECT ASCII('') FROM DUAL;

可以看到 该字符的 ASCII码 是 7
2. 反写确认是否一致
SELECT CHR(7) FROM DUAL;

没问题
问题:由于录入图书时 图书作者 有特殊字符 ‘’,所以在页面显示 图书作者 有错误,总是出现 ‘•’。现象很明显是 ‘’ 不能正常显示,因此在录入数据的时候 用replace()函数做了判断,采用如下把 字符 ‘•’ 替换为 chr(7)。如下:
replace(bk_author,'&'||'#8226;',chr(7)) 由于 ‘&’ 是oracle绑定变量的标示符,因此对’&’做了处理
以下附带 其他特殊字符的 ASCII码
DECLARE
V01 VARCHAR2(5);
BEGIN
FOR I IN 1..100 LOOP
SELECT CHR(I) INTO V01 FROM DUAL;
DBMS_OUTPUT.PUT_LINE('chr'||i||' is '||V01);
END LOOP;
END;
is
chr15 is
chr16 is
chr17 is
chr18 is
chr19 is
chr20 is
chr21 is
chr22 is
chr23 is
chr24 is
chr25 is
chr26 is
chr27 is
chr28 is
chr29 is
chr30 is ‑
chr31 is
chr32 is
chr33 is !
chr34 is "
chr35 is #
chr36 is $
chr37 is %
chr38 is &
chr39 is '
chr40 is (
chr41 is )
chr42 is *
chr43 is +
chr44 is ,
chr45 is -
chr46 is .
chr47 is /
chr48 is 0
chr49 is 1
chr50 is 2
chr51 is 3
chr52 is 4
chr53 is 5
chr54 is 6
chr55 is 7
chr56 is 8
chr57 is 9
chr58 is :
chr59 is ;
chr60 is <
chr61 is =
chr62 is >
chr63 is ?
chr64 is @
chr65 is A
chr66 is B
chr67 is C
chr68 is D
chr69 is E
chr70 is F
chr71 is G
chr72 is H
chr73 is I
chr74 is J
chr75 is K
chr76 is L
chr77 is M
chr78 is N
chr79 is O
chr80 is P
chr81 is Q
chr82 is R
chr83 is S
chr84 is T
chr85 is U
chr86 is V
chr87 is W
chr88 is X
chr89 is Y
chr90 is Z
chr91 is [
chr92 is \
chr93 is ]
chr94 is ^
chr95 is _
chr96 is `
chr97 is a
chr98 is b
chr99 is c
chr100 is d