MySQL与Oracle的大小写问题

标签: mysql oracle 小写 | 发表时间:2014-08-05 14:01 | 作者:valiant
出处:http://www.iteye.com

前段时间,维护的一个应用在Oracle测试时出错,该应用原来已经在MySQL上完成测试。通过查找定位,原因是字段名大小写问题。下面与大家分离一下MySQL与Oracle在大小写处理上的区别:

MySQL

1、在Windows下,数据库名、表名、字段名不区分大小写。
2、大Linux/Unix下,数据库名、表名区分大小写,字段名不区分大小写。
3、编辑/etc/my.cnf,设置lower_case_table_names可以让MySQL是否区分表名的大小写。

0:区分大小写;
1:不区分大小写。

 

Oracle

1、在Oracle中,如果字段名称被双引号("")包裹,Oracle会区分大小写;
2、如果字段名称没有被双引号("")包裹,则全部转换成大写来执行。
3、如果表结构设计时,字段名称使用了数据库的保留字,SQL中的字段名称必须用双引号("")包裹,以避免SQL语句执行出错。不建议用数据库的保留字来做表名和字段名。

以下SQL语句在Oracle中执行时,字段 stat_time, interval 没有被双引号("")包裹,不区分大小写: 
insert into smsc_flow(stat_time,interval,"MODULEID","SMSCNO","ICPNO","MT_OK","MT_FAIL","MT_DELAY","MO_OK","MO_FAIL","STATUS_OK","STATUS_FAIL","SUCCESS_STATUS","COUNT") values('20101010112',1,'MT001',1,1,1,1,1,1,1,1,1,1,1) 

以下SQL语句在Oracle中执行时,字段 stat_time, interval 被双引号("")包裹,全部转换成大写执行: 
insert into smsc_flow("stat_time","interval","MODULEID","SMSCNO","ICPNO","MT_OK","MT_FAIL","MT_DELAY","MO_OK","MO_FAIL","STATUS_OK","STATUS_FAIL","SUCCESS_STATUS","count") values('20101010111','20101010111',1,'MT001',1,1,1,1,1,1,1,1,1,1,1) 

 



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [mysql oracle 小写] 推荐:

MySQL与Oracle的大小写问题

- - 数据库 - ITeye博客
前段时间,维护的一个应用在Oracle测试时出错,该应用原来已经在MySQL上完成测试. 通过查找定位,原因是字段名大小写问题. 下面与大家分离一下MySQL与Oracle在大小写处理上的区别:. 1、在Windows下,数据库名、表名、字段名不区分大小写. 2、大Linux/Unix下,数据库名、表名区分大小写,字段名不区分大小写.

Linux Ksplice,MySQL and Oracle

- Syn - DBA Notes
Oracle 在 7 月份收购了 Ksplice. 使用了 Ksplice 的 Linux 系统,为 Kernel 打补丁无需重启动,做系统维护的朋友应该明白这是一个杀手级特性. 现在该产品已经合并到 Oracle Linux 中. 目前已经有超过 700 家客户,超过 10 万套系统使用了 Ksplice (不知道国内是否已经有用户了.

Oracle MySQL Or NoSQL续

- - Sky.Jian 朝阳的天空
接前面一篇,这里再将之前在“中国系统架构师大会”5周年的时候发布的纪念册“IT架构实录”上的一篇文章发出来,也算是前面博文中PPT的一个文字版解读吧. Oracle,MySQL 还是 NoSQL. 随着阿里系的“去IOE”运动在社区的宣传声越来越大,国内正在掀起一股“去xxx”的技术潮. 不仅仅是互联网企业,包括运营商以及金融机构都已经开始加入到这个潮流之中.

mybatis oracle mysql 批量插入

- - Oracle - 数据库 - ITeye博客
一、oracle的批量插入方式. 二、mysql的批量插入方式. ORA-00918:未明确定义列. 如果不设置列名,那么#{item.senderPhone}的值就是默认列名,那么就有很多概率会产生列名重复,而产生异常. (两个列的值完全可能一样). #{item.receiveTime} 值为null时,必须指定转换类型.

oracle、mysql和sqlserver分页

- - Oracle - 数据库 - ITeye博客
sql server row number分页:. mysql limit分页:. 已有 0 人发表留言,猛击->> 这里<<-参与讨论. —软件人才免语言低担保 赴美带薪读研.

Oracle、Db2、SqlServer、MySQL 数据库插入当前系统时间

- - CSDN博客推荐文章
例如有表table,table 中有两个字段:name 、makedate. 插入系统时间应为sysdate:. insert into table (name,makedate) values('测试',sysdate);. 插入系统时间应为current timestamp并且makedate数据类型为timestamp.

从Oracle转到Mysql前需了解的50个主意事项

- - ITeye博客
1、 对子查询的优化表现不佳. 2、 对复杂查询的处理较弱. 3、 查询优化器不够成熟. 4、 性能优化工具与度量信息不足. 6、 安全功能不成熟,甚至可以说很粗糙. 没有用户组与角色的概念,没有回收权限的功能(仅仅可以授予权限). 当一个用户从不同的主机/网络以同样地用户名/密码登录之后,可能被当作完全不同的用户来处理.

根据数据库注释自动生成数据库文档【支持Oracle和Mysql】

- - 研发管理 - ITeye博客
公司项目比较乱,很多时候都是需要先完成项目再准备文档. 数据库文档是最基本的文档了,整理起来比较麻烦,如果数据库建表的时候能把列注释都能写好的话,理论上自动生成数据库文档应该是很好实现的. 自己简单做了个Oracle和MySQL版本的,感觉还很好用. 用到类库是IText  用来生成Word文档的.

MySQL查询大小写是否敏感问题分析

- - OurMySQL
mysql数据库在做查询时候,有时候是英文字母大小写敏感的,有时候又不是的,主要是由mysql的字符校验规则的设置决定的,通常默认是不支持的大小写字母敏感的. 校对规则是在字符集内用于比较字符的一套规则. 任何一个给定的字符集至少有一个校对规则,它可能有几个校对规则. 要想列出一个字符集的校对规则,使用SHOW COLLATION语句.

Oracle 收购 Ksplice

- feng823 - LinuxTOY
实现无需重启即可为 Linux 内核打安全补丁的 Ksplice 被 Oracle 收购. 在被收购前, Ksplice 为 Fedora, Ubuntu 免费提供该功能,对于 RHEL 和 CentOS 则需要订阅其产品. Oracle 表示将把 Ksplice 带来的零宕机安全更新功能添加到 Oracle 产品订阅服务中,同时停止对其他企业级 Linux 发行版的支持,将 Oracle Unbreakable Linux 打造成唯一具备零宕机安全更新功能的企业级 Linux 发行版.