Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

sintassi errata vicino a 's'. virgolette non chiuse dopo la stringa di caratteri ')'

I dati che stai inserendo contengono probabilmente caratteri speciali come virgolette singole. Passare a una query con parametri in modo che i valori vengano sottoposti a escape correttamente. Un buon esempio e una spiegazione sono http://www.codinghorror.com/blog/2005/04/give-me-parameterized-sql-or-give-me-death.html .

[Modifica:aggiunto un esempio. ]

Ad esempio, sostituisci il contenuto della tua prima funzione con:

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();