Md.*_*man 7 java mysql postgresql jpa spring-boot
将数据库 mysql v5 迁移到 postgres v12 后,Java Spring 应用程序显示以下错误:错误:运算符不存在:布尔=整数提示:没有运算符与给定名称和参数类型匹配。您可能需要添加显式类型转换。
布尔类型检查因数据库而异(即 mysql 到 postgres)。考虑下面我所经历的例子。基本实体类BaseEnity {} 有一个活动布尔类型的列,而Order {} 实体类扩展了该类。要选择所有活动订单,mysql 查询为:
select * from Order where active = 1
Run Code Online (Sandbox Code Playgroud)
但是当将数据库迁移到 postgres 时,它不起作用。在postgres中,它显示错误运算符不存在: boolean = integer。正如 postgres 所期望的查询:
select * from Order where active = true
Run Code Online (Sandbox Code Playgroud)
由于 postgres 需要布尔值 true/false,但在 SQL 查询中,该值被设置为整数类型 1,因此我们遇到了提示错误。
| 归档时间: |
|
| 查看次数: |
10736 次 |
| 最近记录: |