为了账号安全,请及时绑定邮箱和手机立即绑定

关于ORA-00900: 无效 SQL 语句?

关于ORA-00900: 无效 SQL 语句?

慕莱坞森 2018-08-27 14:11:06
java.sql.SQLException: ORA-00900: 无效 SQL 语句 at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289) at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:573) at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1891) at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1093) at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2047) at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1940) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2709) at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:589) at PrepStmt.main(PrepStmt.java:15)
查看完整描述

1 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

给你个建议:
1、用System.out.println 把你拼装的sql打印出来。
2、把打印出的sql考到sqlplus中执行,确认一下是什么原因。

※一般这个原因是拼装时候的拼装问题。
比如:
拼出了【where xxx=xxxand xxx=xxx】and前面没有空格
字符型的字段后面没有''如a='asdasd'拼成了a=asdasd等等。
我曾经在拼装的sql中把半角[']写成全角的了,在程序中看不出来,但是考到sqlplus中一眼就看出来了。

---
以上,希望对你有所帮助。

查看完整回答
反对 回复 2018-09-19
  • 1 回答
  • 0 关注
  • 11526 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信