0

我正在通过 ibatis 调用存储过程。使用 jconn2.jar (5.5) 时,它有效,并且已经有效。当我将它换成 jtds jar (1.2.5) 时,我得到一个异常“无效的 SQL 语句或 JDBC 转义,未找到终止 '}'”。

为了提高透明度,我将 Spring 与 DBCP 一起使用。显然 jTDS 中对 SQL 代码的解析不被喜欢,在 jconn2 中被接受。这个项目早于我们很多人,而且我已经很多年没有使用 Sybase。

数据中的离群字符是“-”、“:”和“。”

我是否需要在存储过程调用语句中转义我的参数才能解决此问题?jconn2 是否有没有为 jTDS 设置的默认设置?

谢谢。

4

1 回答 1

0

答案是 jConnect 松散地解释大括号和圆括号的顺序。

所以 {call MyStoredProc(?,?,? })对于 jConnect 来说很好。jTds 有严格的解析,所以不匹配的大括号和小括号是不正确的。

不好玩。

于 2010-04-13T19:31:41.620 回答