Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

falsche Syntax in der Nähe von 's'. Nicht geschlossene Anführungszeichen nach der Zeichenfolge ')'

Die Daten, die Sie einfügen, enthalten wahrscheinlich Sonderzeichen wie einfache Anführungszeichen. Wechseln Sie zu einer parametrisierten Abfrage, damit die Werte ordnungsgemäß maskiert werden. Ein gutes Beispiel und Erklärung ist http://www.codinghorror.com/blog/2005/04/give-me-parameterized-sql-or-give-me-death.html .

[Bearbeiten:Beispiel hinzugefügt. ]

Ersetzen Sie beispielsweise den Inhalt Ihrer ersten Funktion durch:

SqlCommand insertNewAreaPath = new SqlCommand(
    "INSERT INTO InterationPath (ID, NodePath) VALUES(@ID, @NodePath)",     
    conDS_ReleaseCriterions);
insertNewAreaPath.Parameters.Add("@ID", dr[0]);
insertNewAreaPath.Parameters.Add("@NodePath", dr[2]);
insertNewAreaPath.ExecuteNonQuery();