Oracle中转义字符的详细介绍
最近工作中遇到一个需求,需要更新Oracle数据库中所有表的一个字段“flag”为“I”,语句为:
update table_name set flag = 'I'
“I”作为字符串,所以语句中I需要加上单引号。
由于数据库中有多张表,我不想一条一条的语句写,希望能够通过sql语句直接生成所有的语句,所以写了如下sql:
select 'update ' || table_name || ' set flag = 'I'' || ';' from user_tables
这个时候运行,“报错:ORA-00923: 未找到要求的 FROM 关键字”,报错位置就在'I”的第二个单引号位置,因为单引号配对关系,I不是字符串了,所以就报错了,那么如果要显示一个单引号该怎么做呢?
试了语句:
select ''' from dual
同样也会报错,原来“'”作为一个关键字,如果需要显示“'”,需要使用转义字符,就像java的“\”一样。
而Oracle的转义字符就是单引号“'”,所以sql应该这么写:
select '''' from dual
怎么理解呢?把第二个单引号“'”看成“\”就好了,所以我需要的sql就是:
select 'update ' || table_name || ' set flag = ''I''' || ';' from user_tables
这样就OK啦!
原文链接:https://www.juwends.com/tech/oracle/oracle_study_20160914_esc.html
(资源库 www.zyku.net)
您可能感兴趣的文章
- 05-05SQLServer 2016安装时的错误:Polybase要求安装Oracle J
- 03-16oracle 删除重复记录
- 02-18详解ORACLE SEQUENCE用法
- 02-18Oracle使用触发器和mysql中使用触发器的案例比较
- 02-18Oracle 中 table 函数的应用浅析
- 02-18Oracle 自定义split 函数实例详解
- 02-18Oracle数据库用户的密码过期时间如何修改为永不过期
- 02-18oracle中添加删除主键的方法
- 02-18修改Oracle监听默认端口号1521的方法
- 02-18oracle查看执行最慢与查询次数最多的sql语句
- 03-16JS对象的深度克隆方法示例
- 01-12外卖猿配送-外卖猿配送应用软件功能介
- 03-11帝国CMS添加会员注册协议勾选才能注册
- 08-17小米mix4唤醒小爱语音助手
- 05-20win10系统print screen没有反应怎么办
- 10-27vivo手机设置时间小组件步骤分享
- 12-21魅族16sPro查看手机型号方法介绍
- 03-20荣耀手机启用锁屏密码方法
- 04-18小米11pro快速截图操作方法
- 02-09小米11手机来电秀设置教程
最近更新
阅读排行
猜你喜欢
- 03-30vivos9分屏功能使用方法
- 01-08荣耀x30设置24小时制显示方法
- 01-13无纺布制品-无纺布制品应用软件功能介
- 01-11洋葱韩语-洋葱韩语应用软件功能介绍
- 11-17小度如何添加家居设备
- 03-13通过PHP代码将网站保存到桌面的方法
- 09-15OPPOReno7Pro+怎么关闭HD高清通话
- 01-11思倍帮帮-思倍帮帮应用软件功能介绍
- 02-15DedeCMS正文内容截取的方法
- 08-16卡片日记导出方法介绍