0

我调用如下存储的函数:

PreparedStatement deleteAll=connection.prepareStatement("{ call delete_all_data() }");
deleteAll.execute();

在日志中我看到:

15:16:31,950  WARN SqlExceptionHelper:143 - SQL Error: 0, SQLState: 42601
15:16:31,950 ERROR SqlExceptionHelper:144 - ERROR: syntax error at or near "{"
  Position: 1

prepareStatement 有什么问题?

4

2 回答 2

2

connection.prepareStatement将(需要 SQL)更改为connection.prepareCall. 这很可能是您需要的唯一更改,因为 aCallableStatementPreparedStatement.

于 2014-11-24T15:25:28.373 回答
2

我使用 prepareCall 来调用存储过程。

String SQL = "{call delete_all_data()}";
cstmt = conn.prepareCall (SQL);
于 2014-11-24T15:26:42.273 回答