將 H2 從 1.4.200 升級到 2.0.206,現在在我的集成測驗中,我在JdbcSQLSyntaxErrorException圍繞此選擇的 SQL 陳述句 () 中遇到 42001 語法錯誤:attributes0_.value[*] as value3_8_1_
我正在使用休眠物體。此外,僅在測驗環境中使用 H2。
我試過:
H2Dialect在測驗yaml檔案中設定- 記錄 SQL 陳述句以查看是否有任何可疑之處,但沒有運氣
uj5u.com熱心網友回復:
問題是我有一個物體(休眠)欄位名稱等于保留字:value; 這就是為什么堆疊跟蹤用星號 ( ) 指出它的原因[*]。可以在此處找到關鍵字/保留詞的完整串列。
這個答案解決了我的問題,我在這里重新發布是為了人們搜索“h2 upgrade sql error”
由于它是一個測驗環境,所以我globally_quoted_identifiers: true在我的測驗 YAML 檔案中進行了設定的快速修復。
對于生產環境,請確保您:
- 像我一樣設定全域參考的識別符號
- 設定 h2 非關鍵字
- 閱讀 h2 的兼容性功能
或這些的組合。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/416394.html
標籤:
上一篇:在react-testing-library中測驗div或p標簽中文本的最佳方法
下一篇:EFCore多對多linq查詢
