Heim > Datenbank > MySQL-Tutorial > Warum schlägt meine SQL-INSERT-Anweisung mit Parametern fehl und wie kann ich das Problem beheben?

Warum schlägt meine SQL-INSERT-Anweisung mit Parametern fehl und wie kann ich das Problem beheben?

Mary-Kate Olsen
Freigeben: 2025-01-01 07:48:11
Original
721 Leute haben es durchsucht

Why is my SQL INSERT statement with parameters failing, and how can I fix it?

SqlParameter-Parameter – Einfügen mithilfe von Parametern

Frage:

Beim Versuch, einen Datensatz mithilfe einer SQL in eine Datenbank einzufügen Befehl, schlägt die Codeausführung fehl. Der bereitgestellte Code enthält:

SqlCommand comand = new SqlCommand("INSERT INTO Product_table Values(@Product_Name,@Product_Price,@Product_Profit,@p)", connect);
SqlParameter ppar = new SqlParameter();
ppar.ParameterName = "@Product_Name";
ppar.Value = textBox1.Text;
MessageBox.Show("Done");
comaand.Parameters.Add(ppar);
Nach dem Login kopieren

Antwort:

Um einen Datensatz mithilfe von Parametern erfolgreich einzufügen, sollte der folgende Code verwendet werden:

SqlCommand cmd = new SqlCommand("INSERT INTO Product_table Values(@Product_Name, @Product_Price, @Product_Profit, @p)", connect);
cmd.Parameters.Add("@Product_Name", SqlDbType.NVarChar, ProductNameSizeHere).Value = txtProductName.Text;
cmd.Parameters.Add("@Product_Price", SqlDbType.Int).Value = txtProductPrice.Text;
cmd.Parameters.Add("@Product_Profit", SqlDbType.Int).Value = txtProductProfit.Text;
cmd.Parameters.Add("@p", SqlDbType.NVarChar, PSizeHere).Value = txtP.Text;
cmd.ExecuteNonQuery();
Nach dem Login kopieren

Erklärung:

  • Vermeiden Sie die Verwendung von AddWithValue, as Dies kann zu Problemen bei der Datentypkonvertierung führen.
  • Geben Sie die Spaltennamen in der INSERT-Anweisung an (z. B. @Product_Name, @Product_Price) und geben Sie die entsprechenden Werte mit cmd.Parameters.Add(...) an.
  • Geben Sie den Datentyp jedes Parameters mit SqlDbType an.
  • Verwenden Sie cmd.ExecuteNonQuery() zum Ausführen den Befehl und fügen Sie den Datensatz in die Datenbank ein.

Das obige ist der detaillierte Inhalt vonWarum schlägt meine SQL-INSERT-Anweisung mit Parametern fehl und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage