Oracle处理特殊字符

检查数据库级的参数设置

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

时间: 2024-10-13 07:33:13

Oracle处理特殊字符的相关文章

oracle插入特殊字符'&'问题

oracle转义字符开关:set define off   /   show defineoracle插入特殊字符'&'问题,布布扣,bubuko.com oracle插入特殊字符'&'问题

Oracle datafile特殊字符处理

1.发现数据库的数据文件有特殊字符: 2.尝试在sqlplus下用将tablespace offline后修改 SQL> alter tablespace WST_DATA rename datafile 'D:\oracle11\oradata\teblespace\WST_DATA .DBF' TO 'D:\oracle11\oradata\te blespace\WST_DATA.DBF' ; alter tablespace WST_DATA rename datafile 'D:\or

Oracle插入特殊字符 “&” 和 空格

今天在导入一批数据到Oracle时,碰到了这样一个问题:Toad提示要给一个自定义变量AMP赋值,一开始我很纳闷,数据是一系列的Insert语句,怎么会有自定义变量呢?后来搜索了一下关键字AMP发现,原来是因为在插入数据中有一个字段的内容如下: http://xxx.com/3DX?uid=0676&sid=rt_060908 Oracle把这里的URL的参数连接符&当成是一个自定义变量了,所以要求我给变量AMP赋值.经过测试之后,总结出以下三种方法: 方法一:在要插入的SQL语句前加上S

Oracle数据表中输入引号等特殊字符

Oracle输入特殊字符的特殊方法: UPDATE BOOKMARK SET BM_VALUE=q'/ --在这里写下需要输入的内容(可以包括引号.回车等特殊的符号),所见即所得 /' -- WHERE BM_NAME='XX'

【Oracle】Oracle中使用转义字符

1.Oracle 特殊字符 转义 关键词:oracle    转义                                           环境:oracle9i plsql 在plsql里边执行: update userinfo set pageurl='myjsp?page=1&pagesize=10' where id='test' 这条sql语句往数据库的pageurl字段放进去了一个url地址,但是执行的时候却并非那么理想,因为这其中有一个oracle的特殊字符,需要进行转

oracle的正则表达式

阅读目录 1.oracle(regular expression)简单介绍 2.oracle正则特殊字符 3.oracle正则字符簇 4.各种操作符的运算优先级 5.模拟测试例子 6.oracle对应正则函数 回到顶部 1.oracle(regular expression)简单介绍 目前,正则表达式已经在很多软件中得到广泛的应用,包括*nix(Linux, Unix等),HP等操作系统,PHP,C#,Java等开发环境. Oracle 10g正则表达式提高了SQL灵活性.有效的解决了数据有效性

SQL或HQL预编译语句,能够防止SQL注入,但是不能处理%和_特殊字符

最近项目在做整改,将所有DAO层的直接拼接SQL字符串的代码,转换成使用预编译语句的方式.个人通过写dao层的单元测试,有以下几点收获. dao层代码如下 //使用了预编译sql public List<IndvConfigModel> selectConfigBySuffix(String suffix) { String hql = "from IndvConfigModel where configKey like '%'||?||'%'"; return this.

【方法】Oracle用户密码含特殊字符时的登陆问题

[方法]Oracle用户密码含特殊字符时的登陆问题 1.1  BLOG文档结构图 1.2.2  相关文章链接 [密码]Oracle用户密码系列:http://blog.itpub.net/26736162/viewspace-2129595/ ------------------------------------------------------------------------- 第二章 实验部分 2.1  实验环境介绍 项目 source db db 类型 RAC db version

Oracle 特殊字符模糊查询的方法

最近在写DAO层的时候,遇到一个问题,就是使用like进行模糊查询时,输入下划线,无法精确查到数据,而是返回所有的数据. 这让我很好奇,百度之后才发现,原来是因为有些特殊字符需要进行转义才可以进行查询. 首先理解一下什么是特殊字符. 在ascii码表中,特殊字符的范围如下.即从32~47 58~64 91~96 123~126. 模糊查询时,有两种方法可以进行转换. 1. 使用REGEXP_LIKE方法,这是个使用正则表达式来查询的方法,因此有此字符需要进行转义才能查询,如$ *等,转义符为反斜