Questo è il codice che uso per le query parametriche quando lavoro con OleDb:
Dim connection As New OleDb.OleDbConnection(My.Settings.ConnectionString)
Dim command As New OleDb.OleDbCommand("INSERT INTO DIZIONARIO ( P_ITALIANA, P_URDU)VALUES (?,?)", connection)
Dim prm As New OleDb.OleDbParameter()
prm.Direction = ParameterDirection.Input
prm.DbType = DbType.String
prm.Value = Ital 'valore passato alla funzione
command.Parameters.Add(prm)
prm = New OleDbParameter()
prm.DbType = DbType.String
prm.Value = Urd 'valore passato alla funzione
command.Parameters.Add(prm)
connection.Open()
command.ExecuteNonQuery()
connection.Close()
ed il tutto funziona correttamente
ora vorrei lavorare con sql ma la stessa procedura
Dim connection As New SqlClient.SqlConnection(My.Settings.ConnectionString2)
Dim command As New SqlClient.SqlCommand("INSERT INTO DIZIONARIO ( P_ITALIANA, P_URDU )VALUES (?,?)", connection)
Dim prm As New SqlClient.SqlParameter()
prm.Direction = ParameterDirection.Input
prm.DbType = DbType.String
prm.Value = Ital 'valore passato dalla funzione
command.Parameters.Add(prm)
prm = New SqlParameter
prm.DbType = DbType.String
prm.Value = Urd 'valore passato dalla funzione
command.Parameters.Add(prm)
connection.Open()
command.ExecuteNonQuery()
connection.Close()
mi restituisce un errore dicendomi :
Sintassi non corretta in prossimità di '?'.
Dove sto sbagliando?
Vi ringrazio per il vostro aiuto!