ORA-00971: 缺失 SET 关键字 ; bad SQL grammar [];

原因:ORA-00971: 缺失 SET 关键字 ; bad SQL grammar [];_第1张图片

 

开始一直纠结是不是多了一个空格,导致异常的发生!

结果:

解决思路:

1、去掉空格还是 跑异常,网上的答案是xml配置不正确,确定比较了半小时的xml文件《set》标签使用方法是正确的,并且是复制粘贴过来的,还不行

2、猜测是tomcat缓存,去tomcat webapp文件加下面查询xml文件是不是已经 是最新的,已经是最新的了确定

3、重启tomcat,调试还是抛异常。

4、猜测是tomcat缓存未知原因导致的,重新发布再次重启,调试还是抛异常

5、冷静下来,用svn去比较,没有涉及到  符号之类的修改。判断几个原因

(1)控制台的提示不一定准确,可能是其他原因导致的

(2)方法传入的参数是不是到xml文件中是空呢

(3)再不行的话只能是换一个tomcat因为在进xml文件前的方法中  变量都是有值的

(4)xml变量类型不正确

(网上答案,点醒了我[该方法是自动生成的,一般情况下是不可能会类型错误的,

我一一比较了每个变量的类型,数值和string类型都不会抛异常],可能是java方法的变量名相似,导致传入到xml文件中是null)

 

处理:查看service方法中的代码 果然是 Order实体类有2个,变量名 一个是order 一个是orderinfo.

总结:变量名命名  一定要  好区分。否则自己都会被自己“”“欺骗”!自信满满,导致查找bug的路途更加遥远

ORA-00971: 缺失 SET 关键字 ; bad SQL grammar [];_第2张图片

你可能感兴趣的:(JAVA,数据库)