H2 从 1.x 升级到 2.x 后出现 SQL 错误
Getting SQL error after H2 upgrade from 1.x to 2.x
已将 H2 从 1.4.200 升级到 2.0.206,现在在我的集成测试中,我在围绕此 select 的 SQL 语句 (JdbcSQLSyntaxErrorException
) 中收到 42001 语法错误: attributes0_.value[*] as value3_8_1_
我正在使用休眠实体。此外,仅在测试环境中使用 H2。
我试过了:
- 在测试
yaml
文件中设置H2Dialect
- 记录 SQL 语句以查看是否有任何可疑之处,但没有成功
问题是我有一个实体(休眠)字段名称等于保留字:value
;这就是堆栈跟踪用星号 ([*]
) 指出它的原因。 keywords/reserved 个单词的完整列表 can be found here。
,为了搜索“h2 升级 sql 错误”
的人们,我在这里重新发布
由于这是一个测试环境,我在我的测试 YAML 文件中快速修复了设置 globally_quoted_identifiers: true
。
对于生产环境,请确保您:
或这些的组合。
已将 H2 从 1.4.200 升级到 2.0.206,现在在我的集成测试中,我在围绕此 select 的 SQL 语句 (JdbcSQLSyntaxErrorException
) 中收到 42001 语法错误: attributes0_.value[*] as value3_8_1_
我正在使用休眠实体。此外,仅在测试环境中使用 H2。
我试过了:
- 在测试
yaml
文件中设置H2Dialect
- 记录 SQL 语句以查看是否有任何可疑之处,但没有成功
问题是我有一个实体(休眠)字段名称等于保留字:value
;这就是堆栈跟踪用星号 ([*]
) 指出它的原因。 keywords/reserved 个单词的完整列表 can be found here。
由于这是一个测试环境,我在我的测试 YAML 文件中快速修复了设置 globally_quoted_identifiers: true
。
对于生产环境,请确保您:
或这些的组合。