Я не уверен насчет ответа на фактический вопрос, но максимально допустимое количество открытых подготовленных заявлений обычно довольно велико.Поэтому я сильно подозреваю, что техническая проблема, которая заставляет вас задать этот вопрос, заключается в том, что код JDBC неправильно закрывает все открытые операторы в блоке finally
в соответствии со следующей идиомой JDBC:
Connection connection = null;
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
// ...
try {
connection = database.getConnection();
preparedStatement = connection.prepareStatement(SQL_STRING);
resultSet = preparedStatement.executeQuery();
// ...
} finally {
if (resultSet != null) try { resultSet.close(); } catch (SQLException ignore) {}
if (preparedStatement != null) try { preparedStatement.close(); } catch (SQLException ignore) {}
if (connection != null) try { connection.close(); } catch (SQLException ignore) {}
}