java - 自定义 h2 查询中的转义冒号 (':')
问题描述
所以我正在尝试使用它的 JSON_OBJECT 函数为 h2 编写一个自定义查询。JSON_OBJECTJSON_OBJECT(key:value)
在我的 Spring 存储库中使用 so 作为一个简单示例的格式,我正在编写类似的查询@Query(value = "SELECT JSON_OBJECT('id':1)", nativeQuery = true)
在 h2-console 中执行相同的查询时,它按预期运行,但在 Spring 中,冒号(':')被视为变量插入的特殊字符,因此在测试它时,它尝试将以下值映射为变量当然会抛出错误。
我试过用 and 转义冒号,\\
并\\\\
在冒号和值之间放置一个空格,但似乎没有帮助。
关于如何逃避 char 或让 spring 认为冒号是可接受的字符的任何想法?
解决方案
实际上,您可以简单地使用替代语法JSON_OBJECT(KEY 'id' VALUE 1)
,无需使用转义\\:
,转义序列会使您的查询可读性降低。
推荐阅读
- javascript - 如何正确映射一个数组,该数组来自我在 mapStateToProps 中定义的属性之一,以便在我的表单中选择下拉菜单?
- android - 通过 URL 获取 SSL 证书链的方法有哪些?
- outlook - 未收到包含自定义属性的日历事件的更改通知
- db2 - 无法更改表格列
- javascript - 将 curl 命令中的数组传递给 mongoDB
- python - 在 python 中的 PCA 重建中查找 rmse 的问题
- selenium - Selenium python:找到并单击
- from里面的文字
- from里面的文字
- xaml - MasterDetail页面调试错误:CS0263
- python - 如何根据 id 和“原始日期”范围填充熊猫数据框?
- youtube-api - YouTube Live Streaming API 方法的配额成本