码迷,mamicode.com
首页 > 数据库 > 详细

Oracle处理特殊字符

时间:2015-08-26 22:05:43      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:

 

 

 

检查数据库级的参数设置

select * from nls_database_parameters;

 技术分享

 

 

检查实例级的参数设置

select * from nls_instance_parameters

 技术分享

检查会话级的参数设置

select * from nls_session_parameters

 技术分享

 

检查本地的语言环境

SELECT USERENV(‘LANGUAGE‘) FROM DUAL;

 

SIMPLIFIED CHINESE_CHINA.ZHS16GBK

开始处理

  1. 查询  技术分享  的 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;

 

技术分享 

https://it.wikipedia.org/wiki/ASCII

Oracle处理特殊字符

标签:

原文地址:http://www.cnblogs.com/iyoume2008/p/4761724.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!