1.查询
不要使用字面量(常量)做查询条件的值,而要使用绑定变量给查询条件赋值,使用绑定变量是需要编译一次查询计划,编译结果保存在共享池(库缓存)中。
2.错误
error “ORA-01722: invalid number” 不正确的数字
SQL语句中的关联条件等号两边的数据类型不一致,且无法隐式转换。比如:
where date_test = age_test; date_test为DATE类型,age_test为
integer类型,可以将日期类型进行强转 where to_char(date_test)
= age_test;
引号未正确结束。
可能原因一:sql语句中数据类型和数据库中的不匹配,比如数字8854是错误的,但是加上单引号的‘8854’是能够正确执行的。
可能原因二:SQL文件本身编码有问题,在用脚本执行该SQL文件中的SQL语句就会出现问题。用其它编辑器比如sublime打开是正常的,用Windows自带的写字板打开会发现乱码,这时就够看到类似的乱码,右边的引号确实没有闭合。
解决方法:使用sublime打开SQL文件,安装ConvertToUTF8插件。将文件以gbk编码方式保存: