oracle的sql语句大小写

时间:2022-01-01 09:47:26

  我相信大家都知道,oracle数据库是区分大小写的,而且oracle的默认为大写的,也就是说你在sql脚本上面写的sql语句,oracle运行的时候,它会自动转化为大写的。注意一下,我这里举例子的计算机环境是Windows操作系统,操作系统也会对数据库的sql语句的大小写敏感。

举个例子:

SELECT * FROM tablename;

SELECT * FROM TABLENAME;

这两条sql语句的运行结果都是一样的,都是同一张表。并且创建表的时候表名也区分大小写的,也就是说在同一个oracle数据库中可以创建有大小写区别的表名,如上面例子tablename表和TABLENAME表可以同时存在于一个oracle数据库。MYSQL、SQL Server数据库是不转换为大写,但是使用时并不区分大小写,就是说在同一个数据库中这两张tablename表和TABLENAME表不能同时存在。

oracle的sql语句大小写怎么办?  

  你可以用引用“” 括起来要区分大小写的字段,如SELECT * FROM TABLENAME where “id”=1;我最近一个项目是要把原来的连接池是mysql改为oracle,在mapper.xml文件中sql语句有用SELECT COUNT(*) AS  count FROM TABLENAME,在web层调用了count字段就是找不到,后来查看了一下文件,原来是大小写的错误,所以有时候这就没办法了要手动改了,我提出了这个问题只是提醒大家以后编程时候多加注意一下。

  我也在网上找了一下MYSQL数据库修改是否区分大小写方法(下面这篇链接文章里面也提到了操作系统会对数据库的大小敏感会有影响):http://www.cnblogs.com/studyzy/p/6122739.html,SQL Server数据库修改是否区分大小写方法:http://www.cnblogs.com/jiutianxingchen/p/3447286.html