我正在尝试将值插入名为Division
的表中,并且表id_dep
中有一个名为Departement
的外键。问题是由于外键,我无法将值插入Division
表。我搜索了互联网,发现我不能直接将值插入外键,而是通过Select
。我做了一些更改,我的命令看起来像这样:
string req = "INSERT INTO DIVISION VALUES(SELECT id_dep FROM Departement WHERE libelle='"+dep+"','" + id + "','" + lib + "')";
现在我遇到了语法错误的问题。如何解决?
答案 0 :(得分:3)
使用INSERT INTO...SELECT
语法,
INSERT INTO DIVISION (colName, colName2, colName3)
SELECT id_dep, @id, @lib
FROM Departement
WHERE libelle = @dep
始终参数化查询以避免sql注入。