Aggiornare MySQL dal DataAdapter

mercoledì 25 giugno 2008 - 17.58

gabriel81 Profilo | Junior Member

Siamo di nuovo qui....

una volta creato e popolato un datatable, mi piacerebbe modificare le righe tipo così:

Dim adattatore As New MySqlDataAdapter("SELECT * FROM Tabella WHERE ID = 1", connString)
Dim tabella As New DataTable
adattatore.Fill(tabella)
tabella.Rows(0).Item("NOME_COLONNA") = "Pippo"
tabella.AcceptChanges()
adattatore.Update(tabella)
rcs.Clear()


Ma ovviamente non funziona.

Questo mi interesssa perchè vorrei evitare di scrivermi le query: cambio i dati nelle righe del datatable e poi faccio fare all'adapter il lavoro sporco di aggiornarmi il db, facendo i dovuti controlli.
Se no l'alternativa è quella di scrivere una routine tipo eseguiSQL(byval sql as string) ecc ecc che mi rompe

E' un idea malsana, oppure in genere si fà così ma ho sbagliato qualcosa nel codice??

totti240282 Profilo | Guru

Leva tabella.AcceptChanges() e vedrai che funziona.

Se tu accetti i cambiamenti poi quando fai l'update lui non trova nulla da aggiornare.
C'è solo un capitano !!!!!!

gabriel81 Profilo | Junior Member

Purtroppo non funziona....
riporto il codice, (nei commenti scrivo ciò che compare dai vari Msgbox che ho messo x debug)

Dim adattatore As New MySqlDataAdapter("SELECT * FROM FORNITORI WHERE FORNITORE = 1", My.Settings.MySQL_connString)
Dim tabella As New DataTable
adattatore.Fill(tabella)
'*****(tabella.Rows(0).Item("Localita").ToString ->"NOVARA" tabella.Rows(0).RowState.ToString -> "Unchanged"
tabella.Rows(0).Item("Localita") = "Pippo"
'*****(tabella.Rows(0).Item("Localita").ToString ->"PIPPO" tabella.Rows(0).RowState.ToString -> "Modified"
adattatore.Update(tabella)
'*****(tabella.Rows(0).Item("Localita").ToString ->"PIPPO" tabella.Rows(0).RowState.ToString -> "Modified"
tabella.Clear()
adattatore.Fill(tabella)
'*****(tabella.Rows(0).Item("Localita").ToString ->"NOVARA" tabella.Rows(0).RowState.ToString -> "Unchanged"


Infatti sul db la città rimane novara...

gabriel81 Profilo | Junior Member

Nessuno mi sa aiutare???????????????

:-c
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5