flyway - 当 SQL 语句中有双引号时,Sybase ASE 上的 Flyway 会导致 Invalid column name 错误
问题描述
当 SQL 语句中有双引号时,Sybase ASE 上的 flyway migrate 命令会返回错误。
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"
我在 linux 上使用 Flyway 6.3.3 并尝试使用 jConnect 和 jTDS 驱动程序。
简单的解决方案是将双引号替换为单引号。但是,我有数百个复杂的存储过程需要更新,以便它们可以与 flyway 一起使用。
我错过了什么可以解决这个问题吗?
谢谢,韦斯利
解决方案
在马克的建议下,我能够通过添加来解决这个问题
set quoted_identifier off
在 beforeMigrate.sql(flyway 回调)中禁用 sybase 将字符串视为标识符
谢谢你们!
推荐阅读
- tensorflow - Keras Tuner Hyperband - 如何设置最大试验和最大时期?
- c - 如何将变量结构类型传递给C中的函数
- excel - 从 Excel 文件中打开 OLEObject word 文档时如何防止出现“邮件合并”警告
- javascript - 我似乎看不到我的 JavaScript 和 HTML 代码中缺少什么
- python - 用相同的 ID 更新 sqlite3 中的多行
- rest - 在 GET 请求中返回未保存的资源而不是 404 是否可以?
- google-cloud-platform - GCP 工作流的最大超时时间是多少?
- reactjs - 在另一个 API 调用 React 之后通过自定义钩子使用 API 调用更新状态
- c# - .NET JIT 编译器优化
- firebase - 多币种 Web 应用程序的替代方案