C# - Befehl.ExecuteNonQuery (); "Fehler" Falsche syntax in der Nähe 'WERT'
Ich habe versucht, eine Tonne von verschiedenen Dingen, ich bekomme den gleichen Fehler auf meinem
cmd.ExecuteNonQuery();
Wirft er mir diese.
Eine nicht behandelte Ausnahme des Typs 'System.Daten.SqlClient.SqlException' ist in System.Data.dll
Zusätzliche Informationen: Falsche syntax in der Nähe 'WERT'.
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
namespace Server_Testing
{
class Program
{
static void Main(string[] args)
{
string conString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;
SqlConnection con = new SqlConnection(conString);
con.Open();
SqlCommand cmd = new SqlCommand("INSERT INTO Test (Id, Name) VALUE (@Id, @Name)", con);
if(con.State == ConnectionState.Open)
{
//cmd.Parameters.Add(new SqlParameter("@Id", 1));
//cmd.Parameters.Add(new SqlParameter("@Name", "MyName"));
//cmd.Parameters.AddWithValue("@Id", 1);
//cmd.Parameters.AddWithValue("@Name", SqlDbType.NVarChar).Value = "MyName";
cmd.Parameters.AddWithValue("@Id", 1);
cmd.Parameters.AddWithValue("@Name", "Myname");
cmd.ExecuteNonQuery();
}
}
}
}
Wie Sie sehen können aus die Kommentare, ich habe versucht, einige Dinge, aber nicht, wenn für mich funktioniert, ich kann nicht scheinen, um es richtig zu machen, muss der SQL-string, aber das sollte in Ordnung sein als gut.. Kann mir jemand helfen hier?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollte es
VALUES
nichtVALUE
.Lesen INSERT (Transact-SQL)
Und verwenden
mit
- Anweisung entsorgen IhreSqlConnection
undSqlCommand
.Als "best practice", nicht verwenden
AddWithValue
Methode. Es kann erzeugen unerwartete Ergebnisse. Verwenden.Add()
Methode oder es ist überlastet.Lesen: Können wir aufhören, über AddWithValue() bereits?