- 浏览: 1047745 次
- 性别:
- 来自: 南京
-
文章分类
- 全部博客 (501)
- dwr (6)
- javascript (84)
- oracle (66)
- jsp/servlet (18)
- ant (3)
- 基础知识 (12)
- EXT (10)
- My SQL (10)
- java (71)
- spring (37)
- 学习的对象 (2)
- Linux (24)
- 面试 (1)
- HTML/CSS (11)
- tomcat (11)
- 收藏夹 (2)
- Power Designer (2)
- struts.xml配置文件 (1)
- sturts2 (3)
- myeclipse (8)
- eclipse (7)
- Maven (34)
- SVN (3)
- SAP JCO (2)
- JBOSS (11)
- webservice (8)
- word (1)
- 敏捷开发 (1)
- sybase (4)
- Nexus (3)
- EhCache (3)
- log4j (3)
- Cookie (4)
- Session (4)
- CXF (7)
- AXIS (2)
- SSO (1)
- LDAP (1)
- velocity (2)
- Jquery (5)
- redis (2)
- http (4)
- dojo (1)
- Linux资源监控软件mnon的安装与运用 (1)
- notepad++ (1)
- EA (1)
- UML (1)
- JasperReports (1)
- 权限 (0)
- freemarker (4)
- Spring MVC (1)
- JMS (1)
- activeMQ (1)
- hession (3)
- 安全 (1)
- ibatis (2)
- log (1)
- nginx (1)
最新评论
-
winhbb:
我刚好遇到了一个问题(在可以依赖注入的场合有效):有两个模块A ...
解决Maven项目相互依赖/循环依赖/双向依赖的问题 -
nanjiwubing123:
long3ok 写道你好 XmlOutputFormatter ...
用XStream转换复杂XML -
zhoujianboy:
另外一个方法实现eclipse tomcat 热部署:http ...
eclipse下实现maven项目在tomcat容器热部署方法 -
long3ok:
你好 XmlOutputFormatter 请问这个类是在什么 ...
用XStream转换复杂XML -
ganbo:
总结的好,文章给力。
解决Maven项目相互依赖/循环依赖/双向依赖的问题
双引号的作用是:假如建立对象的时候,对象名、字段名加双引号,则示意 Oracle将严格区分大小写,否则Oracl都默认大写。
而单引号则示意:这个加了单引号的字段是一个字类似字符串,并不区分大小写。
单引号用于标识字符与数字的区别
当指定字符串文本时,必须用单引号将字符串文本引住。
Oracle10g之前,假如字符串文本里含有单引号,那么必须运用两个单引号示意。例如:I'm a String!
字符串文本则为:string_var:='I''m a String!'
在oracle10g中可以运用其它分隔符(<>,[],{}等),留心,运用这些分隔符时,不仅要在分隔符前后加单引号,还要带有前缀q.例:string_var:=q'[I''m a String!]';
例如
select * from table_name where id=1;这种代表查询的是数字
select * from table_name where id='1';这种代表查询的是字符
假如是双引号是这样,假如你有个表的字段叫sysdate,因为sysdate属于oracle中的特有字符,但你要查询这个字段的时候
select "sysdate" from table_name;
但是你要是用
select 'sysdate' from table_name;
那么你查出来的就是字符串,结果是sysdate
运用如下的更新语句不可以:update device set dept='select * from message where name='tom' ' ;
处理要领:
update device set dept='select * from message where name=' 'tom' ' where id=3' ;
执行成功。
原来,两个'' 示意了一个'
单引号在 Oracle 中有三种身份:
1. 用来引用一个字符串常量,也就是界定一个字符串的开始和结束
2. 转义符,对紧随其后出现的字符(单引号)进行转义
3. 表示它本身,也就是它作为一个字符串的一部分而出现在一个字符串常量中
当具有不同身份的单引号紧挨着一起出现在 sql 语句中时常常令人迷惑不解,下面我将以自己总结出来的经验为基础,结合具体实例来告诉大家如何弄清每个单引号的含义。
总结经验:
1. 出现在表达式开头和结尾的这两个单引号的含义肯定是表示引用一个字符串,界定字符串的开始和结束
2. 如果单引号出现在表达式中间(即非表达式开头和结尾的单引号),且多个单引号之间没有任何其他字符,那么当我们从左向右分析时,第一对单引号中的第一个是转义符,它对紧随其后的第二个单引号进行转义,以使第二个单引号作为一个字符出现在一个字符串常量中。第二队,第三队,以此类推......
下面用实例来验证自己的经验总结:
示例一:
select '''' from dual;
result '
上图中,表达式 '''' 中第1、4个单引号表示引用一个字符串常量,表达式的剩余部分我们从左往右分析,由于中间是一对单引号,故此对中的第一个是转义符,其对第二个进行转义,使第二个表示单引号本身。分析得出这里有一个字符串常量,其中只有一个单引号字符。sql 语句的运行结果与我们的分析结果一致。
示例二:
select 'exit''''' from dual
result exit''
上图中,表达式 'exit''''' 中第一个和最后一个单引号表示引用一个字符串常量,表达式的剩余部分我们依然从左往右分析。剩余部分中,遇到的第一个单引号后面紧随一个单引号,我们将其作为一对,根据示例一,这一对的解析结果为一个单引号字符本身;然后继续向右走,又遇到一对紧挨着的单引号,同理,他们的解析结果也是一个单引号字符本身。分析得出这里的字符串常量包含exit和两个单引号字符。sql 语句的运行结果与我们的分析结果一致。
而单引号则示意:这个加了单引号的字段是一个字类似字符串,并不区分大小写。
单引号用于标识字符与数字的区别
当指定字符串文本时,必须用单引号将字符串文本引住。
Oracle10g之前,假如字符串文本里含有单引号,那么必须运用两个单引号示意。例如:I'm a String!
字符串文本则为:string_var:='I''m a String!'
在oracle10g中可以运用其它分隔符(<>,[],{}等),留心,运用这些分隔符时,不仅要在分隔符前后加单引号,还要带有前缀q.例:string_var:=q'[I''m a String!]';
例如
select * from table_name where id=1;这种代表查询的是数字
select * from table_name where id='1';这种代表查询的是字符
假如是双引号是这样,假如你有个表的字段叫sysdate,因为sysdate属于oracle中的特有字符,但你要查询这个字段的时候
select "sysdate" from table_name;
但是你要是用
select 'sysdate' from table_name;
那么你查出来的就是字符串,结果是sysdate
运用如下的更新语句不可以:update device set dept='select * from message where name='tom' ' ;
处理要领:
update device set dept='select * from message where name=' 'tom' ' where id=3' ;
执行成功。
原来,两个'' 示意了一个'
单引号在 Oracle 中有三种身份:
1. 用来引用一个字符串常量,也就是界定一个字符串的开始和结束
2. 转义符,对紧随其后出现的字符(单引号)进行转义
3. 表示它本身,也就是它作为一个字符串的一部分而出现在一个字符串常量中
当具有不同身份的单引号紧挨着一起出现在 sql 语句中时常常令人迷惑不解,下面我将以自己总结出来的经验为基础,结合具体实例来告诉大家如何弄清每个单引号的含义。
总结经验:
1. 出现在表达式开头和结尾的这两个单引号的含义肯定是表示引用一个字符串,界定字符串的开始和结束
2. 如果单引号出现在表达式中间(即非表达式开头和结尾的单引号),且多个单引号之间没有任何其他字符,那么当我们从左向右分析时,第一对单引号中的第一个是转义符,它对紧随其后的第二个单引号进行转义,以使第二个单引号作为一个字符出现在一个字符串常量中。第二队,第三队,以此类推......
下面用实例来验证自己的经验总结:
示例一:
select '''' from dual;
result '
上图中,表达式 '''' 中第1、4个单引号表示引用一个字符串常量,表达式的剩余部分我们从左往右分析,由于中间是一对单引号,故此对中的第一个是转义符,其对第二个进行转义,使第二个表示单引号本身。分析得出这里有一个字符串常量,其中只有一个单引号字符。sql 语句的运行结果与我们的分析结果一致。
示例二:
select 'exit''''' from dual
result exit''
上图中,表达式 'exit''''' 中第一个和最后一个单引号表示引用一个字符串常量,表达式的剩余部分我们依然从左往右分析。剩余部分中,遇到的第一个单引号后面紧随一个单引号,我们将其作为一对,根据示例一,这一对的解析结果为一个单引号字符本身;然后继续向右走,又遇到一对紧挨着的单引号,同理,他们的解析结果也是一个单引号字符本身。分析得出这里的字符串常量包含exit和两个单引号字符。sql 语句的运行结果与我们的分析结果一致。
发表评论
-
Oracle强制使用索引
2013-01-25 16:48 5352Oracle强制使用索引: select /*+ INDEX ... -
Oracle if exists(...)
2013-01-22 10:52 1240对于Oracle中没有 if exists(...) 的语法, ... -
oracle 赋debug权限
2013-01-15 15:29 4053pl/sql 报错 不能运行debug 时 ora-0131 ... -
Oracle 10g使用游标更新或删除数据
2013-01-04 16:03 1096在定义又表示必须要带 ... -
oracle 的 CONNECT BY 和START WITH
2013-01-04 15:00 1371在SELECT命令中使用CONNECT BY 和START W ... -
树-Oracle用Start with...Connect By子句递归查询
2013-01-04 14:59 1046Start with...Connect By子句递归查询一般 ... -
java.sql.SQLException: ORA-01436: 用户数据中的 CONNECT BY 循环
2013-01-04 14:55 2312SELECT r1.region_id,parent_id ... -
Oracle创建删除用户、角色、表空间、导入导出、...命令总结
2013-01-03 16:24 1292//创建临时表空间 create temporary ta ... -
ResultSet.getMetaData() 的使用
2012-08-12 11:22 2120java.sql.ResultSet.getMetaData( ... -
ORACLE中如何查找特定对象中的文本内容~
2012-04-30 19:37 1251[c-sharp] view plaincopy SQL> ... -
Oracle 下读取表/字段的备注信息
2012-04-30 19:19 1208Oracle 通过COMMENT ON TABLE / C ... -
nls_sort和nlssort 排序功能介绍
2012-04-23 23:20 11138ALTER SESSION SET NLS_SORT=''; ... -
Oracle 递归查询 树查询 start with connect by prior
2012-02-28 09:52 1103网页地址: http://www.iteye.com/topi ... -
java中oracle特殊字符的查询
2011-10-18 14:38 2405escape:指定某字符为特殊字符: 例如指定‘\’ 为特殊字 ... -
pl/sql case or decode
2011-10-16 00:19 1081SELECT CASE 3 WHEN 1 THEN ... -
Oracle存储过程返回游标 [转载]
2012-04-22 22:09 4657有俩种方法: 一种是声明系统游标,一种是声明自定义游标,然后 ... -
oracle索引表函数(集合函数)(下表为字符串的索引表举例红色)(嵌套表/索引表/可变数组举例绿色)
2011-10-12 11:40 0一、EXISTS函数 1、检测 ... -
pl/sql 集合代码 的遍历方式
2011-10-12 10:22 1489-- Created on 2011-10-12 by HUC ... -
浅谈oracle复合数据类型
2012-04-22 22:10 997--本文档可以直接拷贝运行。 /* oracle复合数 ... -
table array object record
2012-04-22 22:10 1134前段时间我恰好有关于这些的学习笔记,贴出来大家指点一下: ...
相关推荐
SQL 中存储过程中 SQL 语句的单引号和双引号问题 在 SQL 中,单引号和双引号的问题是一个常见的混淆点,特别是在存储过程中编写 SQL 语句时。下面将对此问题进行详细的解释和总结。 一、单引号和双引号的基本概念 ...
在ORACLE中,单引号有两个作用: 1:字符串是由单引号引用 2:转义。 单引号的使用是就近配对,即就近原则。而在单引号充当转义角色时相对不好理解 1.从第二个单引号开始被视为转义符,如果第二个单...
MySQL 里可以用双引号包起字符串,Oracle 里只可以用单引号包起字符串。在插入和修改字符串前必须做单引号的替换:把所有出现的一个单引号替换成两个单引号。 4. 翻页的 SQL 语句的处理 MySQL 处理翻页的 SQL 语句...
在 MySQL 中,字符串可以被双引号或单引号包围,但在 Oracle 中,只能使用单引号。这在编写 SQL 查询时需要特别注意。在 Oracle 中,如果字符串中包含单引号,需要将单引号加倍以正确转义。 3. 翻页查询(LIMIT 和...
- MySQL 允许使用双引号或单引号包围字符串,而 Oracle 只接受单引号。在处理 Oracle 的字符串时,需要确保单引号的正确处理,例如,将所有单引号替换为两个单引号。 4. **分页查询**: - MySQL 使用 LIMIT 子句...
MySQL 允许使用双引号来包围字符串,而 Oracle 只接受单引号。在 Oracle 中,如果字符串内部含有单引号,需要使用两个单引号来转义。 4. **分页查询**: MySQL 使用 LIMIT 子句轻松实现分页,如 `LIMIT 开始位置,...
1. 数据库对象命名:在SQL Server中,表和列名通常用方括号包围(如 `[TableName]` 和 `[ColumnName]`),而在Oracle中,它们用双引号包围(如 `"TableName"` 和 `"ColumnName"`)。 2. 语句开头:SQL Server通常以...
“I”作为字符串,所以语句中I需要加上单引号。 由于数据库中有多张表,我不想一条一条的语句写,希望能够通过sql语句直接生成所有的语句,所以写了如下sql: select 'update ' || table_name || ' set flag = 'I''...
可以快速将字符串转化为大小写、加引号和逗号便于查询 可以快速将字符串转化为大小写、加引号和逗号便于查询
MySQL 允许使用双引号包裹字符串,而 Oracle 只接受单引号。在 Oracle 中插入或更新含单引号的字符串时,需要将单引号替换为两个单引号,如 `'He said, ''Hello''.'`。 4. **翻页查询**: MySQL 使用 LIMIT 子句...
- MySQL 允许使用双引号(")或单引号(')包裹字符串,而 Oracle 只接受单引号。在处理字符串时,可能需要进行单引号的替换,例如将单引号替换为两个单引号。 4. **分页查询**: - MySQL 使用 LIMIT 子句轻松...
- 双引号保留字段名的原始大小写,否则Oracle默认转为大写。 5. **DISTINCT关键字**: - `select distinct`用于去除结果集中重复的行,如`select distinct deptno from emp`。 6. **WHERE子句**: - `where`...
- Oracle 使用单引号 `'` 包裹字符串,而 MySQL 允许使用单引号或双引号 `"`。 - MySQL 在 `FROM` 后面对结果集使用别名是必需的,如 `FROM (SELECT ... ) AS alias`。 - MySQL 的 `DELETE` 语句不支持为表添加...
- Oracle字符串使用单引号,而MySQL接受单引号和双引号。 - MySQL在`FROM`后的子查询必须加别名,如`FROM (SELECT ...) AS alias`。 - MySQL的`DELETE`语句不支持表别名,必须写成`DELETE FROM table1 AS T WHERE...
select ename || "abcd" 如果连接字符串中含有单引号,用两个单引号代替一个单引号。 第五课:distinct select deptno from emp; select distinct deptno from emp; select distinct deptno from emp; select ...
插入单引号到数据库时,可以使用ASCII码或者双引号来表示。如`insert into t values('i'||chr(39)||'m');`这里的`chr(39)`代表单引号 `'`。另一种方式是使用两个单引号来表示一个,如`insert into t values('I''m')...
- Oracle中字符串用单引号包围,而MySQL中可用单引号或双引号。 - MySQL在使用子查询时,如`FROM (SELECT...)`,需要在子查询后添加别名。 - 在删除数据时,MySQL不支持对表使用别名,但可以使用`DELETE T FROM ...
如 修改、插入行、删除行、提 交(将表格中的数据改变写入相应的数据库表中)、多功能拷贝、将选择的单元格数据导出为 XLS /CSV /INSERT SQL /HTML /XML 等格式、单条记录操作、能方便地查找\替换单元格中的数据、...