这个让我困惑了很长时间,所以我想在这里得到一些帮助:)
我正在使用 JDBC 连接到一个古老的 Sybase Adaptive server 6 (!!!) 我什至在网上找不到它的 JDBC 驱动程序,所以我从安装目录中复制了它们:)
现在,插入和查询以及所有其余的数据库操作都可以正常工作,但是在调用存储过程时遇到了问题。让我们首先从一段代码开始:
CallableStatement loginProcedure = connection.prepareCall("{call Login}");
loginProcedure.executeUpdate();
这是一些正常的过程调用代码。我必须补充一点,登录过程不接受任何参数,也不输出任何东西。它唯一要做的就是在名为 AiCol 的数据库中创建一个变量。我也会很快用程序代码更新这篇文章。
执行上述代码时,我得到标准语法异常:
com.sybase.jdbc.SybSQLException: ASA Error -131: Syntax error near 'Login'
at com.sybase.tds.Tds.processEed(Tds.java)
at com.sybase.tds.Tds.nextResult(Tds.java)
at com.sybase.jdbc.ResultGetter.nextResult(ResultGetter.java)
at com.sybase.jdbc.SybStatement.nextResult(SybStatement.java)
at com.sybase.jdbc.SybStatement.executeLoop(SybStatement.java)
at com.sybase.jdbc.SybCallableStatement.execute(SybCallableStatement.java)
以前有人遇到过这个问题吗?这是我第一次调用没有 IN/OUT 参数的存储过程,所以我可能做错了什么:/
提前致谢!/ivo