Sql 为什么这个UPDATE语句在H2中失败?
此UPDATE语句在针对Postgres运行时有效,但在针对H2运行时失败。等价的H2语句是什么Sql 为什么这个UPDATE语句在H2中失败?,sql,h2,Sql,H2,此UPDATE语句在针对Postgres运行时有效,但在针对H2运行时失败。等价的H2语句是什么 UPDATE award_details SET award_id = a.id FROM awards a WHERE a.award_details_id = award_details.id; H2错误消息为: SQL State : 42000 Error Code : 42000 Message : Syntax error in SQL statement "[*] UPD
UPDATE award_details
SET award_id = a.id
FROM awards a
WHERE a.award_details_id = award_details.id;
H2错误消息为:
SQL State : 42000
Error Code : 42000
Message : Syntax error in SQL statement "[*]
UPDATE AWARD_DETAILS
SET AWARD_ID = A.ID
FROM AWARDS A
WHERE A.AWARD_DETAILS_ID = AWARD_DETAILS.ID"; SQL statement:
您当前的更新语法看起来是Postgres样式。而是使用相关子查询更新语法:
UPDATE award_details aw
SET award_id = (SELECT a.id FROM awards a WHERE a.award_details_id = aw.id);
根据其文档(),H2中的
UPDATE
不支持FROM
子句。