Derzeit habe ich eine Programmierung für eine Website mit asp.net, die Daten von Microsoft SQL Server extrahieren und aktualisieren.Warum kann ich meine SQL Server-Tabelle mit diesem Code nicht aktualisieren?
Im Moment muss ich bestimmte Werte in bestimmten Spalten in bestimmten Tabelle aktualisieren, aber mein Update SqlCommand
funktioniert nicht. Ich recherchiere bereits im Internet, aber es funktioniert nicht. Es gibt keinen Fehler, aber der Wert in der SQL-Server-Tabelle in der Spalte in der Zeile Kritikalität wurde nicht aktualisiert, wenn ich auf die Schaltfläche klicke. Ich benutze diese SQL-Abfrage und es funktioniert gut:
UPDATE dbo.HullPoF
SET WeightageFactor = 0.10
WHERE Criticality = 'Fatigue Loading'
Dies ist mein Code:
protected void btnSubmitPoF_Click(object sender, EventArgs e)
{
conn1 = new SqlConnection(ConfigurationManager.ConnectionStrings["myDBconn1"].ConnectionString);
commPoF = new SqlCommand("UPDATE dbo.HullPoF SET WeightageFactor = @WF WHERE Criticality='Fatigue Loading'", conn1);
commPoF.Parameters.Add("@WF", System.Data.SqlDbType.NVarChar).Value = txtWFFatLoad.Text; ;
conn1.Open();
commPoF.ExecuteNonQuery();
conn1.Close();
}
Was mit meinem Code falsch? Einer der Lösung, die ich versuche zu verwenden ist von Update table using SqlCommand in asp.net
Der aktuelle Wert 0,20 ist, und ich möchte auf 0,10
p/s ändern: Dies ist meine erste Frage auf dieser Website. Wenn mein Frageformat falsch ist, sag es mir bitte.
Wird ein Fehler angezeigt? Woher weißt du, dass es nicht funktioniert? Haben Sie versucht, SQL mit SQL Server Profiler zu verfolgen, um festzustellen, ob etwas mit dem generierten SQL nicht stimmt? – sstan
Da der Wert in der SQL Server-Tabelle für die Spalte WeightFactor in der Zeile Kritikalität nicht geändert wurde. Ich verwende "UPDATE dbo.HullPoF SET WeightageFactor = 0.10 WHERE Kritikalität = 'Fatigue Loading'" und es funktioniert gut – Fahmieyz
Wahrscheinlich das Problem von Doppel Semikolons in SQL-Parameter-Deklaration hier: "commPoF.Parameters.Add (" @ WF ", System .Data.SqlDbType.NVarChar) .Value = txtWFFatLoad.Text;; ". Stellen Sie sicher, dass der Datentyp dem Datentyp column entspricht und der Wert txtWFFatLoad vorhanden ist. Ich empfehle Ihnen, eine gespeicherte Prozedur zum Aktualisieren von DB-Werten zu verwenden, anstatt die Aktualisierungsabfrage direkt in SqlCommand zu schreiben. –