1、oracle 特殊字符 转义

关键词: oracle    转义

环境:oracle 9i  plsql

在plsql里边执行:

update userinfo set pageurl='myjsp?page=1&pagesize=10' where id='test'

这条sql语句往数据库的pageurl字段放进去了一个url地址,但是执行的时候却并非那么理想,因为这其中有一个oracle的特殊字符,需要进行转义,那就是字符'&'.

怎么处理上例中的特殊字符?

两个办法:

1) update userinfo set pageurl='myjsp?page=1'||'&'||'pagesize=10' where id='test'

2) update userinfo set pageurl='myjsp?page=1'||chr(38)||'pagesize=10' where id='test'

其中||是连字符, chr(38)跟ASCII的字符转码是一致的。

plsql中还可以set define off来关闭特殊字符,还可以用show define来查看有些特殊定义的字符。

2、oracle 中如何转义 特殊字符

问 : 如何转义 下划线 _

select * from ng_values where name like 'lady_%'

jieguo 结果显示 lady_test,lady_test,lady1

正确结果应该是:lady_test,lady_test

不包括 lady1

请各位给出转义方法,3ks

answer:

select ... from ... where ... like '/_%' escape '/';

3、

insert into t(col) values(chr(ascii('&'))) ;

(方法一)

例:插入特殊字元'&'

SQL> SHOW DEFINE

define "&" (hex 26) ?

SQL> SET DEFINE OFF

SQL> SHOW DEFINE

define OFF

SQL> INSERT INTO VALUES ('AT&T');

/

1 row created

(方法二)

SQL> SHOW ESCAPE

escape OFF

SQL> SET ESCAPE ON

SQL> SHOW ESCAPE

escape "\" (hex 5c)

SQL> INSERT INTO temp_table VALUES ('select * from emp where ename = \&1');

1 row created.

几个测试方法:

SELECT 'myjsp?page=1&pagesize=10' FROM dual;

SELECT 'myjsp?page=1&pagesize=10' FROM dual;

SQL>   create   table   a   (b   varchar2(10));

Table   created

SQL>   insert   into   a   values('_a');

1   row   inserted

SQL>   select   B   from   A   where   instr(b,'_a')>0;

B

----------

_a

select   B   from   A   where   b   like   '%\_a%'   escape   '\'

先启动转义符

set   escape   on

select   B   from   A   where   b   like   '%\_a%'   escape   '\';

select   B   from   A   where   b   like   '%\_a%'   escape   '\'

posted on 2011-10-26 22:18 孤飞燕 阅读(21069) 评论(0)  编辑  收藏 所属分类: 数据库

java oracle 字符_Oracle转义字符相关推荐

  1. java oracle 排序_Oracle的排序和限制条件(order by 和where)

    1.Order by子句的使用 select column.... from .... order by ... 1) Order by子句在整个 select语句中的位置: 始终位于最后 2) or ...

  2. java oracle分页_oracle 分页存储过程和java代码

    create or replace procedure contfenyePro( v_in_tablename in varchar2, v_in_pagesize in number, v_in_ ...

  3. java oracle 流水号_Oracle生成流水号函数

    一.参考 1:日期范围上 smalldatetime的有效时间范围1900/1/1~2079/6/6 datetime的有效时间范围1753/1/1~9999/12/31 2:精准度上 smallda ...

  4. java oracle 序列_Oracle之序列

    一.序列概述 在Oracle中,可以用Sequence序列号生成器,为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字).其主要用途是生成表的主键值,可以在插入语句中引用,在插入之前,获取序列 ...

  5. java oracle 触发器_Oracle 触发器

    一.触发器简介 触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行.因此触发器不需要人为的去调用,也不能调用.然后,触发器的触发条件其实在你定义的时候就已经设定好了.这里面需 ...

  6. java oracle管理系统_哔站播放量高达三百万的Java视频教程,如此惊人,还不来学?...

    "Java Planform Standard Edition"是Java语言的标准平台技术,是所有Java开发的语言基础,更是大数据.分布式开发思想建模的初期,此阶段的Java语 ...

  7. 图书管理系统java+Oracle

    图书管理系统java+Oracle 一.课程设计实验目的 二.课程设计任务及要求 三.数据库设计 四.程序设计 五.软件使用说明 六.课程设计总结 七.附录 一.课程设计实验目的 课程设计围绕课程的整 ...

  8. oracle 字符超长,oracle存储超长字符串

    oracle 字符.数值.日期处理_计算机软件及应用_IT/计算机_专业资料.字符及处理方法 1.固定长度字符串: char(n) 空格补足,效率高,最大 2000. 2.变长: varchar(n) ...

  9. java 转义_JAVA的转义字符

    常见的转义字符 转移字符对应的英文是escape character  , 转义字符串(Escape Sequence) 字母前面加上捺斜线"\"来表示常见的那些不能显示的ASCI ...

最新文章

  1. UiBot新版本即将上线!添加Java程序支持!
  2. 第六周 Word目录和索引
  3. android 如何判断有没有网络
  4. 进程间通信 - 邮槽实现
  5. 中leetcode提示未登录_分享一款将 LeetCode 中 AC 的题目转化为 MarkDown 表格的插件...
  6. 机器学习——人工神经网络之后向传播算法(BP算法)
  7. KVM的概念和云计算
  8. php绘制雪花墙,基于雪花算法的 PHP ID 生成器
  9. 如何在 Mac 上打开或关闭专注模式?
  10. java数据库查询类
  11. latex怎么让table下面空白变小_LaTeX:pgf usepackage(宏包)的中译
  12. 2021抖音上热门技巧有哪些?
  13. 产品经理为什么比程序员工资要高?百度员工:因为他是产品灵魂
  14. ArcGIS | 02小技巧-三调地类转换
  15. 通过js实现单击显示隐藏图片
  16. C++ placement new 用法
  17. 数据库去重,group by、distinct、rowid的用法,oracle和mysql如何数据去重保留一条
  18. windows的C盘根目錄下中文文件夾重命名
  19. 2018/01/22 爬虫日记
  20. 如何使用 Docker 部署 Ghost 博客

热门文章

  1. exec su-exec_WildFly Kubernetes exec探针
  2. 冷热复位_冷热rx-java可观察
  3. JDK 14:CMS GC是OBE
  4. 知识图谱 图数据库 推理_图数据库的知识表示与推理
  5. nodemanager_如何使用NodeManager来控制WebLogic Server
  6. 垃圾收集算法,垃圾收集器_垃圾收集器准则和提示
  7. gson 入门_Google GSON入门
  8. 坚实原则:开放/封闭原则
  9. 声明jpa批注处理器_如何使用反射基于JPA批注记录您的数据模型
  10. moxy json介绍_MOXy的对象图– XML和JSON的输入/输出局部模型