0

我正在调用一个 SQL 存储过程SimpleJdbcCall,它运行良好 - 除了性能太慢。

为了改善这一点,我尝试对调用进行批处理,以便它们一次性执行 - 我找不到这样做的方法。

SimpleJdbcCall似乎不能批处理。

所以我发现 jdbcTemplate.batchUpdate(

我将参数构建为List<Object[]>格式或使用BatchPreparedStatementSetter任何一种方式我看到相同的错误:

Incorrect syntax near '@p0'.

这是我尝试批处理的 SQL 语句:

call PortfolioCacheStore ?,?,?,?,?,?,?,?,?,?,?,?,?

我已经尝试过同时使用 call 和 exec 以及带和不带括号:

call PortfolioCacheStore(?,?,?,?,?,?,?,?,?,?,?,?,?)

ETC

无论哪种方式,我都会收到上述错误或非常相似的错误。

如果我接受它正在构建的查询并在 SQL 客户端中运行它,它就可以工作:

exec PortfolioCacheStore 'G','LL','U','B',0,'2021-09-03','2022-01-19',5,'D','FO.tgz',0,'e-local','Arg'

请问有谁知道我在做什么和/或如何将一系列存储过程调用从 JDBC 批处理到 Sybase?

4

0 回答 0