Проход по Sybase ASE приводит к ошибке «Недопустимое имя столбца», если в операторе SQL есть двойные кавычки - PullRequest
0 голосов
/ 17 апреля 2020

команда flyway migrate на Sybase ASE возвращает ошибку, когда в операторе SQL есть двойные кавычки.

Migration R__wes.sql failed
---------------------------
SQL State  : 42S22
Error Code : 207
Message    : Invalid column name 'C'.
Statement  : SELECT count(1) from redemptions WHERE redem_type = "C"

Я использую Flyway 6.3.3 на linux и пробовал с обоими jConnect и драйверы jTDS.

Простое решение - заменить двойные кавычки на одиночные. Однако у меня есть сотни сложных хранимых процедур, которые необходимо обновить, чтобы они работали с flyway.

Есть что-то, что я пропустил, чтобы решить эту проблему?

Спасибо, Уэсли

1 Ответ

0 голосов
/ 17 апреля 2020

С предложением Марка я смог решить эту проблему, добавив

set quoted_identifier off в beforeMigrate. sql (обратный вызов flyway), чтобы отключить sybase для обработки строк как идентификаторов

http://infocenter.sybase.com/help/index.jsp?topic= / com.sybase.infocenter.dc00801.1510 / html / iqrefso / X315903.htm

Спасибо всем!

...