per preparare una query di aggiornamento(si Acces2000) per un dataadapter faccio una cosa del genere
codice:
sql = "UPDATE TBLAV SET "
sql &= "CodCli='" & myUpdateCommand.Parameters("codcli").Value & "'"
sql &= ",CodLav='" & myUpdateCommand.Parameters("CodLav").Value & "'"
sql &= ........
sql &= ........
ma non mi mette i valori dei parametri, ho provato anche
codice:
sql = "UPDATE TBLAV SET "
sql &= "CodCli='" & myUpdateCommand.Parameters("codcli").SourceVersion.Current & "'"
sql &= ",CodLav='" & myUpdateCommand.Parameters("CodLav").SourceVersion.Current & "'"
sql &= .......
sql &= .......
in questo caso nella query mi mette su TUTTI i campi il valore '512'(che non pesca assolutamente dal database)
aggiungo il command con con la query di update al dataadapter: myDataAdapter.UpdateCommand = myUpdateCommand
i parametri l' ho dichiarati in questo modo
codice:
myUpdateCommand.Parameters.Add(New OleDbParameter("CodCli", System.Data.OleDb.OleDbType.VarWChar))
myUpdateCommand.Parameters("CodCli").SourceColumn = "CodCli"
myUpdateCommand.Parameters("CodCli").SourceVersion = DataRowVersion.Current
myUpdateCommand.Parameters.Add(New OleDbParameter("Codlav", System.Data.OleDb.OleDbType.VarWChar))
myUpdateCommand.Parameters("Codlav").SourceColumn = "Codlav"
myUpdateCommand.Parameters("Codlav").SourceVersion = DataRowVersion.Current
.....
.....
lo scenario è questo:
1)dataset popolato tramite metodo fill del dataadapter
2)collegato ad una griglia con il binding
3)modifico i dati sulla griglia
4)aggiornamento dei cambiamenti sul db,
il dataadapter dovrebbe "capire" quale righe ho modificato e dare in pasto alla query solo quelle, giusto?
ma non riesco a mappare i campi alla query
magari non sono stato molto chiaro nell'esporre il problema, in tal caso spero mi indichiate quali informazioni occorrono per analizare il problema
grazie a tutti