在佐佑
2018-09-29 05:47
采纳率: 50%
浏览 2.8k
已采纳

jdbc连接报错超出准备语句的最大数量,这是数据库超过最大连接数了么?

com.sap.db.jdbc.exceptions.JDBCDriverException: SAP DBTech JDBC: [608]: exceed maximum number of prepared statements: the number of prepared statements per connection cannot exceed the max statements
at com.sap.db.jdbc.exceptions.SQLExceptionSapDB.createException(SQLExceptionSapDB.java:357)
at com.sap.db.jdbc.exceptions.SQLExceptionSapDB.generateDatabaseException(SQLExceptionSapDB.java:197)
at com.sap.db.jdbc.packet.ReplyPacket.buildExceptionChain(ReplyPacket.java:110)
at com.sap.db.jdbc.ConnectionSapDB.execute(ConnectionSapDB.java:934)
at com.sap.db.jdbc.CallableStatementSapDB.sendCommand(CallableStatementSapDB.java:1862)
at com.sap.db.jdbc.StatementSapDB.sendSQL(StatementSapDB.java:1007)
at com.sap.db.jdbc.CallableStatementSapDB.doParse(CallableStatementSapDB.java:255)
at com.sap.db.jdbc.CallableStatementSapDB.constructor(CallableStatementSapDB.java:207)
at com.sap.db.jdbc.CallableStatementSapDB.(CallableStatementSapDB.java:151)
at com.sap.db.jdbc.CallableStatementSapDBFinalize.(CallableStatementSapDBFinalize.java:16)
at com.sap.db.jdbc.ConnectionSapDB._prepareStatement(ConnectionSapDB.java:1601)
at com.sap.db.jdbc.ConnectionSapDB.prepareStatement(ConnectionSapDB.java:188)
at com.sap.db.jdbc.trace.Connection.prepareStatement(Connection.java:421)

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • HinanaiTenshi 2018-09-29 06:42
    已采纳

    并不是,超出的是statement而不是connection,超出数据库最大连接数的情况下先死的是数据库服务器,会出现超多等待超时。估计是你某个提交statement的循环没控制好,在上一个statement没有关闭的情况下就创建了新的statement。

    点赞 打赏 评论
  • 哈哈哈哈哈lgh 2018-09-29 06:29

    看起来是的,你最好设置下你的数据库允许最大链接数,不过问题应该在代码上,才造成连接数不够

    点赞 打赏 评论
  • fish_dream 2018-09-30 03:03

    某个值过大,检查你的数据库表字段

    点赞 打赏 评论

相关推荐 更多相似问题