Oracle 10g SQL中q-quote怎么用
发表于:2024-09-27 作者:千家信息网编辑
千家信息网最后更新 2024年09月27日,这篇文章给大家分享的是有关Oracle 10g SQL中q-quote怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在Oracle中,字符串的字面量如果含有单引号,那
千家信息网最后更新 2024年09月27日Oracle 10g SQL中q-quote怎么用
这篇文章给大家分享的是有关Oracle 10g SQL中q-quote怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
在Oracle中,字符串的字面量如果含有单引号,那么必须转义,而且转义符是单引号',这样加上表示字符串字面量的外层'',那么势必要写很多单引号,不仅可读性降低,而且容易出错。当然,使用chr(39),也可以代替引号,可能比写多个单引号更好,可读性强,但是毕竟这种写法不是很常见。SO,在10g中,Oracle引入了q-quote的用法。
常规字符字面量内单引号的使用:
dingjun123@ORADB> select ''' str from dual; ERROR: ORA-01756: 引号内的字符串没有正确结束 --要使用转义,两个单引号表示一个单引号 dingjun123@ORADB> select '''' str from dual; S - ' dingjun123@ORADB> select '''a''' str from dual; STR --- 'a' |
另外可以使用CHR(39)作为引号来拼凑,比较简洁。
dingjun123@ORADB> SELECT 'It'||chr(39)||' a cat' str FROM dual; STR --------- It' a cat |
虽然使用chr(39),但是看起来还是很麻烦,所以10g引入了q-quote特性。允许按照指定规则也就是Q或q开头(如果是national character literals,那就是N或n放在Q或q之前),然后'界定符号原始字面量界定符号',使用规则很简单:
1) q-quote界定符可以是除了TAB,空格,回车外的任何单字节或多字节字符。
2) 除了单字节的的开始界定符是[,{,<,(,那么结束界定符必须是],},>,) 其他开始界定符与结束界定符必须一致
如:
--4个特殊单字节开始界定符是[,{,<,(,结束界定符必须是],},>,) dingjun123@ORADB> SELECT q'[a'bc]' str FROM dual; STR ---- a'bc dingjun123@ORADB> SELECT q'{a'bc}' str FROM dual; STR ---- a'bc dingjun123@ORADB> SELECT q'' str FROM dual; STR ---- a'bc dingjun123@ORADB> SELECT q'(a'bc)' str FROM dual; STR ---- a'bc --因为【开始界定付是多字节,所以必须一致,特殊的就4个单字节界定符 dingjun123@ORADB> SELECT q'【a'bc[' FROM dual; ERROR: ORA-01756: 引号内的字符串没有正确结束 dingjun123@ORADB> SELECT q'【a'bc【' FROM dual; Q'【 ---- a'bc --因为]不是4个特殊界定符的开始界定符 dingjun123@ORADB> SELECT q']a'bc[' FROM dual; ERROR: ORA-01756: 引号内的字符串没有正确结束 dingjun123@ORADB> SELECT q']a'bc]' FROM dual; Q']A ---- a'bc --其他非特殊的4个开始界定符的要求开始与结束一致 --a是界定符 dingjun123@ORADB> SELECT q'ab'cda' str FROM dual; STR ---- b'cd --A是界定符,但是结束的是a,不一致 dingjun123@ORADB> SELECT q'Ab'cda' str FROM dual; ERROR: ORA-01756: 引号内的字符串没有正确结束 dingjun123@ORADB> SELECT q'Ab'cdA' str FROM dual; STR ---- b'cd --+号是界定符 dingjun123@ORADB> SELECT q'+b'cd+' str FROM dual; STR ---- b'cd --单引号是界定符 dingjun123@ORADB> select q''ab'c'' from dual; Q''A ---- ab'c --National character literals dingjun123@ORADB> SELECT nq'' str from dual; STR ---------- a'b'c dingjun123@ORADB> SELECT Nq'' str from dual; STR ---------- a'b'c dingjun123@ORADB> SELECT NQ'' str from dual; STR ---------- a'b'c dingjun123@ORADB> SELECT nQ'' str from dual; STR ---------- a'b'c |
一般使用的时候,都是使用4个特殊字符作为界定符,这样前后界定符包含了原生态字符串,可读性更好。
感谢各位的阅读!关于"Oracle 10g SQL中q-quote怎么用"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
引号
字符
字符串
字节
特殊
一致
字面
可读性
转义
内容
更多
符号
篇文章
规则
不错
原始
实用
简洁
两个
也就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
正版mc怎么进服务器
苏州管理软件开发机构
虚拟专用网络技术的课程主要任务
化身安全卫士维护网络安全
镇江网络安全设备预算
速达5000客户端连不上服务器
网络技术黑镜
期货分析软件开发
计算机网络技术专业很难学吗
怎么备份mysql数据库
苏州推广软件开发咨询报价
出境软件开发
添加服务器对wifi有无影响
纵深防御和网络安全
树人网络安全
南方电网网络安全管理
网络安全中心管理规定
杀戮间2服务器管理员
鼎烜厦门互联网科技有限公司
网络安全法公布投诉
服务器管理安卓软件
网络安全技能鉴定通用类
时分秒数据库
软件开发维护费收多少
如何做好数据库选型
软件开发的流程阶段
在线象棋对弈数据库
苏州嵌入式软件开发机构
网络安全实验吧测试题答案
网络安全与板报