C# 插入到包含外键的表中

C# 插入到包含外键的表中,c#,mysql,sql,winforms,C#,Mysql,Sql,Winforms,我试图将值插入一个名为Division的表中,该表的department中有一个名为id\u dep的外键。问题是,由于外键的原因,我无法将值插入到Division表中。我搜索了互联网,发现我不能直接将值插入外键,只能通过选择。我做了一些更改,我的命令如下所示: string req = "INSERT INTO DIVISION VALUES(SELECT id_dep FROM Departement WHERE libelle='"+dep+"','" + id + "','" + lib

我试图将值插入一个名为
Division
的表中,该表的
department
中有一个名为
id\u dep
的外键。问题是,由于外键的原因,我无法将值插入到
Division
表中。我搜索了互联网,发现我不能直接将值插入外键,只能通过
选择
。我做了一些更改,我的命令如下所示:

string req = "INSERT INTO DIVISION VALUES(SELECT id_dep FROM Departement WHERE libelle='"+dep+"','" + id + "','" + lib + "')";

现在我遇到了一个关于语法错误的问题。如何解决此问题?

使用
插入到…选择
语法

INSERT INTO DIVISION (colName, colName2, colName3)
SELECT id_dep, @id, @lib
FROM Departement
WHERE libelle = @dep

始终参数化查询以避免sql注入。

使用
插入到…选择
语法

INSERT INTO DIVISION (colName, colName2, colName3)
SELECT id_dep, @id, @lib
FROM Departement
WHERE libelle = @dep

始终参数化查询以避免sql注入。

使用
插入到…选择
语法

INSERT INTO DIVISION (colName, colName2, colName3)
SELECT id_dep, @id, @lib
FROM Departement
WHERE libelle = @dep

始终参数化查询以避免sql注入。

使用
插入到…选择
语法

INSERT INTO DIVISION (colName, colName2, colName3)
SELECT id_dep, @id, @lib
FROM Departement
WHERE libelle = @dep

始终参数化查询以避免sql注入。

将语法错误粘贴到此处。。where子句中有多个逗号。按照您的预期编写sql的副本。下面是语法错误“Erreur de syntax.dans l'expression”SELECT id_dep FROM department WHERE libelle='Informatique''。我注意到您上面的语句中有很多错误。首先是Where子句用逗号分隔(在
WHERE
中,您总是使用
/
或类似于
运算符的
/
运算符。其次,在
INSERT
中,使用
SELECT
您不需要关键字“VALUES”,而是必须选择要插入的列。在此处粘贴语法错误。WHERE子句中有多个逗号。写出一个cop。)这是语法错误“Erreur de syntax.dans l'expression”SELECT id_dep FROM department WHERE libelle='Informatique''。我注意到您上面的语句中有很多错误。首先是WHERE子句用逗号分隔(在
WHERE
中,您总是使用
/
或类似于
运算符的
/
运算符。其次,在
INSERT
中,使用
SELECT
您不需要关键字“VALUES”,而是必须选择要插入的列。在此处粘贴语法错误。WHERE子句中有多个逗号。写出一个cop。)这是语法错误“Erreur de syntax.dans l'expression”SELECT id_dep FROM department WHERE libelle='Informatique''。我注意到您上面的语句中有很多错误。首先是WHERE子句用逗号分隔(在
WHERE
中,您总是使用
/
或类似于
运算符的
/
运算符。其次,在
INSERT
中,使用
SELECT
您不需要关键字“VALUES”,而是必须选择要插入的列。在此处粘贴语法错误。WHERE子句中有多个逗号。写出一个cop。)这是语法错误“Erreur de syntax.dans l'expression”SELECT id_dep FROM department WHERE libelle='Informatique''。我注意到您上面的语句中有很多错误。首先是WHERE子句用逗号分隔(在
WHERE
中,您总是使用
/
/
之类的操作符。其次,在
插入
中,使用
选择
您永远不需要关键字“值”,而是必须选择要插入的列。@user3533921,这不是答案吗?没有将其标记为的列有什么问题吗答案?@user3533921,这不是答案吗?你没有把它标记为答案的东西有什么问题?@user3533921,这不是答案吗?你没有把它标记为答案的东西有什么问题吗?@user3533921,这不是答案吗?你没有把它标记为答案的东西有什么问题吗?