最近,公司开发部门数据库迁移到新服务器上面,数据库原来使用Oracle10g,新服务器上面装的是Oracle11g,具体版本11.2.0.1
结果,开发同事不经意间发现,SQL语句中使用全角的括号竟然语法检查也是可以通过的.
比如:
select (col_Total1+col_Total2) from t_Test where rownum<10;
select (col_Total1+col_Total2) from t_Test where rownum<10;
这两个语句都是合法的语句,而且执行结果一致.
进一步测试,不光是()()可以混用,而且
select to_single_byte('*') from dual;
select to_multi_byte('*') from dual;
满足这样的配对组合都可以互换使用.
应该是11.1.0.7支持的.
因为这样写出来的SQL代码,产品发布后,拿到Oracle10g的环境下运行,可是通不过语法检查的.目前尚未找到资料,不知道Oracle是否有能关闭此功能的设置(隐含参数).
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29512902/viewspace-1170896/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29512902/viewspace-1170896/