当尝试将一批行插入现有表时,我正在获得下面的异常
ORA-00942: table or view does not exist
我可以确认该表存在于db中,我可以使用oracle将数据插入该表
sql开发人员但是当我尝试在java中使用preparedstatement插入行时,它的抛出表不存在错误.
请在下面找到堆栈跟踪的错误
java.sql.sqlException: ORA-00942: table or view does not exist 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:1889) 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 quotecopy.DbConnection.insertIntoDestinationDb(DbConnection.java:591) at quotecopy.Quotecopier.main(Quotecopier.java:72)
有人可以建议这个错误的原因吗?
更新:问题解决
我的数据库连接属性或我的表或视图名称没有问题.问题的解决是非常奇怪的.我正在尝试插入的列之一是Clob类型.由于我以前在oracle db中处理clob数据时遇到了很多麻烦,所以尝试用一个临时的字符串setter替换clob setter,并且在执行任何问题的同一个代码,并且所有的行被正确插入!
ie. peparedstatement.setClob(columnIndex,clob)
被替换了
peparedstatement.setString(columnIndex,“String”)
为什么错误表或视图确实存在错误是插入clob数据错误.有人可以解释一下吗
非常感谢您的回答和意见.
解决方法
如果表存在,Oracle也会报告此错误,但是您没有任何权限.所以如果你确定桌子在那里,请查看赠款.
原文地址:https://www.jb51.cc/java/124904.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。