您好我找到了在C#中为MySQL命令添加值的代码片段
MySqlCommand command = connection.CreateCommand();
command.CommandText = "INSERT INTO tb_mitarbeiter (Vorname) VALUES (?name)";
command.Parameters.AddWithValue("?name", mitarbeiter);
connection.Open();
command.ExecuteNonQuery();
现在我想将数据添加到多个coloumn,但如果我这样尝试:
command.Parameters.AddWithValue("?id", Projektid, "?projektnummer", Projektnummer, "?anlageDatumProjekt", Projektanlage, "?auftraggeberProjekt",Projektauftraggeber, "?bezeichnungProjekt", Projektbezeichnung, "?nachAufwand", nachAufwand, "?bemerkungProjekt",Projektbemerkung, "?matFremdKalk", matfremdkalk, "?maStundenKalk",mastundenkalk, "?maKostenKalk", makostenkalk, "?maZuschlagFixKalk", mazuschlagfixkalk, "?maZuschlagVarKalk",mazuschlagvarkalk, "?maschStundenKalk",maschstundenkalk, "?maschKostenKalk",maschkostenkalk, "?maschZuschlagFixKalk",maschzuschlagfixkalk, "?maschZuschlagVarKalk",maschzuschlagvarkalk, "?summeAuftragKalk",summeauftragkalk, "?matFremdErfasst",matfremderfasst, "?maStundenerfasst",mastundenerfasst, "?maSelbstkostenErfasst",maselbstkostenerfasst, "?maschStundenErfasst",maschstundenerfasst, "?maschKostenVariabelErfasst",maschkostenvariabelerfasst, "?maschKostenFixErfasst",maschkostenfixerfasst, "?gemeinKostenBerechnet",gemeinkostenberechnet, "?abschlagRechnungErfasst",abschlagrechnungerfasst, "?rabatt", rabatt);
它只是说
没有带有52个参数的AddWithValue重载。
我需要更改什么才能运行代码?
答案 0 :(得分:1)
您尝试使用一个 AddWithValue
方法添加所有52个参数及其值。你不能那样做。
首先,您需要在命令中使用列名定义所有参数,例如;
command.CommandText = "INSERT INTO tb_mitarbeiter (Vorname, id, projectnummber....) VALUES (?name, ?id, ?projektnummer....)";
然后,您需要在52种不同的AddWithValue
方法中添加所有52个参数。
command.Parameters.AddWithValue("?name", mitarbeiter);
command.Parameters.AddWithValue("?id", Projektid);
command.Parameters.AddWithValue("?projektnummer", Projektnummer);
...
...
或者将所有这些添加到一个MySqlParameterCollection
中,并将此集合添加到您的命令中;
command.Parameters.Add(MyParameterCollection);
答案 1 :(得分:0)
尝试仅为每个AddWidthValue添加一个值,如
command.Parameters.AddWithValue("?name", mitarbeiter);
command.Parameters.AddWithValue("?id", Projektid);
command.Parameters.AddWithValue("?projektnummer", Projektnummer)
等等。
斯文
答案 2 :(得分:0)
你需要自己添加每个sql参数
一个例子就是你的情况
command.Parameters.AddWithValue("?id", Projektid);
command.Parameters.AddWithValue("?pr1ojektnummer", Projektnummer);
最后打电话给
command.ExecuteNonQuery()