常量隨後進行的是H2DB查詢INSERT INTO表中選擇不與H2 DB
INSERT INTO userpermission (userid, permissionid, createddt, createdby, updateddt, updatedby)
SELECT u.userid, p.permissionid, now(), ("1"), now(), ("1") FROM user u, permission p
WHERE u.email = "[email protected]";
我想實現是記錄插入userpermission與user表中指定的電子郵件地址的用戶,爲權限表中的每個權限。
以下是錯誤
Reason: liquibase.exception.DatabaseException: Column "1" not found; SQL statement:
INSERT INTO userpermission (userid, permissionid, createddt, createdby, updateddt, updatedby)
SELECT u.userid, p.permissionid, now(), ("1"), now(), ("1") FROM user u, permission p
WHERE u.email = "[email protected]" [42122-193] [Failed SQL: INSERT INTO userpermission (userid, permissionid, createddt, createdby, updateddt, updatedby)
SELECT u.userid, p.permissionid, now(), ("1"), now(), ("1") FROM user u, permission p
WHERE u.email = "[email protected]"]
同樣的查詢工作在MySQL。
不確定H2,但在所有的RDMS中,常量用單引號聲明。括號也是不必要的。用'1'替換'(「1」)'。 – Utsav
是的,我在添加大括號之前試過。不起作用。 – TechCrunch
用雙引號替換雙引號。首先運行select語句。此外,您通過不給予連接條件來進行交叉連接。那是故意的嗎? – Utsav