PDA

View Full Version : [VB.NET] Update record OLEDB


Quseto82
27-11-2009, 06:51
Buongiorno,
sto tentanto di effettuare l'update di un record tramite OLEDB, vi posto di seguito il mio codice sorgente:

Dim SQL As String = "Select * from PROVA WHERE NOME='Marco'"
DA2 = New OleDb.OleDbDataAdapter(SQL, CnnAccess)
DA2.Fill(DS2, "PROVA")
'GrdClienti.DataSource = DS.Tables("PROVA")
Dim cmd2 As New OleDb.OleDbCommandBuilder(DA2)
DS2.Tables("PROVA").Rows(0).Item(0) = "marcoooooooooooooo"
DA2.Update(DS2, "PROVA")

L'aggiornamento del record sul dataset viene effettuato, però al momento in cui effettuo DA2.Update(DS2, "PROVA") mi genera il seguente errore:

Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information.


Ringrazio in anticipo chi può essere di aiuto.
Saluti Francesco

MarcoGG
27-11-2009, 08:45
La tabella "PROVA" sul DB per caso non ha una Primary Key ?

Quseto82
27-11-2009, 08:55
:muro: Ho impostato la primarykey e tutto funziona!!
Grazie tante!!:D :D :D

MarcoGG
27-11-2009, 09:02
:muro: Ho impostato la primarykey e tutto funziona!!
Grazie tante!!:D :D :D

Quando usi OleDbCommandBuilder è d'obbligo. ;)
E comunque, al di là di questo, avere tabelle DB senza chiave primaria non è mai una buona idea...