Msgstr "Неверный оператор SQL или JDBC escape, завершающий '}' не найден." с jTDS и Sybase
Я вызываю хранимую процедуру через ibatis. Это работает, и работало, при использовании jconn2.jar (5.5). Когда я заменяю его на jtds jar (1.2.5), я получаю исключение "Недопустимый оператор SQL или escape JDBC, завершающий"} "не найден".
Для большей прозрачности я использую Spring с DBCP. Очевидно, что синтаксический анализ кода SQL в jTDS не нравится, что принимается в jconn2. Этот проект предшествовал многим из нас, и я не использовал Sybase в течение многих лет.
Внешние символы в данных "-", ":" и "."
Нужно ли экранировать мои параметры в операторе вызова хранимой процедуры, чтобы обойти эту проблему? Существуют ли настройки по умолчанию для jconn2, которые не установлены для jTDS?
Благодарю.
1 ответ
Ответ jConnect свободно интерпретирует порядок скобок и скобок.
Так что {вызов MyStoredProc (?,?,?}) Подходит для jConnect. jTds имеет строгий синтаксический анализ, поэтому несовпадающие скобки и скобки неверны.
Не смешно.