“找不到无效的SQL语句或JDBC转义,终止'}'。”使用jTDS和Sybase

时间:2010-04-13 17:32:17

标签: sybase ibatis jdbc jtds jconnect

我正在通过ibatis调用存储过程。当使用jconn2.jar(5.5)时,它可以正常工作。当我把它换成jtds jar(1.2.5)时,我得到一个异常“无效的SQL语句或JDBC转义,终止'}'找不到。”

为了提高透明度,我正在使用Spring和DBCP。显然,在jTDS中解析SQL代码并不受欢迎,这在jconn2中被接受。这个项目早于我们这一批,我多年没有使用过Sybase。

数据中的外围字符是“ - ”,“:”和“。”

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

感谢。

1 个答案:

答案 0 :(得分:0)

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

所以{call MyStoredProc(?,?,?})适用于jConnect。 jTds具有严格的解析,因此错误匹配的括号和括号不正确。

不好玩。