Con il comando:
convalida tutte le modifiche riportate.codice:Me.DataSet.Tabella.AcceptChanges()
Ma quando aggiorno le modifiche, al riavvio del programma in exe le modifiche non vengono riportate
Come mai?
Come devo fare?
Con il comando:
convalida tutte le modifiche riportate.codice:Me.DataSet.Tabella.AcceptChanges()
Ma quando aggiorno le modifiche, al riavvio del programma in exe le modifiche non vengono riportate
Come mai?
Come devo fare?
"Che differenza c'è tra un telescopio e una scarpa stretta? - Nessuna! Tutte due fanno vedere le stelle!"
**********
Homeworld 2, il gioco potente che ho mai incontrato!
Ciao Alexander.
Con AcceptChanges, fai esattamente il contrario di quello che vuoi fare, cioè ....convalidi tutte le modifiche apportate al Datatable rendendo impossibile al dataadapter di rilevarle e quindi aggiornarle.
Piuttosto, dovresti usare il metodo Update del DataAdapter, per aggiornare i dati.
Facci sapere...
Ciao
Inanzitutto, ti ringrazio per la risposta e spero di trattare a lungo questo argomento
Ilrpoblema però è che, una volta salvato i dati, se voglio aggiornarli, mi restituisce un errore, il quale dice che se di deve disporre un UpdateCommand valido per aggiornare le modifiche
Ti spiego meglio:
Io ho salvato dei dati, e io voglio modificarli. Una volta modificati, vado a premere il pulsante col metodo Update, e qui mi da l'errore
Qui in seguito si trova il codice di salvataggio:
Sono preoccupato dal fatto che con il metodo EndEdit finisce le modifiche.codice:Me.Validate() Me.TabellaBindingSource.EndEdit() Me.TabellaTableAdapter.Update(Me.DataSet.Tabella)
Ho provato a toglierlo, ma al riavvio del programma l'ultimi dati salvati spariscono
Tu sei l'unica persona che può aiutarmi
"Che differenza c'è tra un telescopio e una scarpa stretta? - Nessuna! Tutte due fanno vedere le stelle!"
**********
Homeworld 2, il gioco potente che ho mai incontrato!
Esatto ... significa che i 'commands' del dataadapter che si dovrebbero preoccupare dell'aggiornamento dei dati, non sono stati inizializzati.Originariamente inviato da Alexander777
Ilrpoblema però è che, una volta salvato i dati, se voglio aggiornarli, mi restituisce un errore, il quale dice che se di deve disporre un UpdateCommand valido per aggiornare le modifiche
Per farlo, dovresti assegnare il tuo dataadapter ad un commandbuilder prima di usare il metodo fill, così che permetti al commanbuilder di costruire/inizializzare i command relativi all'inserimento, modifica e cancellazione dei dati in base alla struttura della query di select.
Quindi
codice:Conn = New OleDb.OleDbConnection(ConnString) Cmd = New OleDb.OleDbCommand("SELECT * FROM TuaTabella", Conn) Da = New OleDb.OleDbDataAdapter(Cmd) Ds = New DataSet Dim cmb As New OleDb.OleDbCommandBuilder(Da) Da.Fill(Ds, "NomeTabella") DataGridView1.DataSource = Ds.Tables(0) DataGridView1.Refresh() cmb.GetUpdateCommand() cmb.GetDeleteCommand() cmb.GetInsertCommand() Sul click del bottone di update Da.Update(Ds.Tables(0))Questo non è assolutamente vero.Tu sei l'unica persona che può aiutarmi
Se non sono stato chiaro .... facci sapere....
Ciao
Grazie molte!
Ti farò sapere se funziona!
Ciao!![]()
![]()
![]()
"Che differenza c'è tra un telescopio e una scarpa stretta? - Nessuna! Tutte due fanno vedere le stelle!"
**********
Homeworld 2, il gioco potente che ho mai incontrato!
Guarda questo
VB2005 OLEDB Demo
http://www.planet-source-code.com/vb...4586&lngWId=10
Ciao Gibra.
Ho dato un occhio al progettino di esempio che hai linkato....ma non mi sembra sia quello che ha chiesto Alexander, in quanto, l'esempio, non utilizza il dataadapter per l'aggiornamento dei dati ma ogni volta un nuovo command.
Nulla in contrario al metodo ..... anzi ..... io sono promotore del 'tutto a manina' e ... poco 'già pronto che funziona'.....volevo solo precisare.
Ciao.
Carissimo Jeremy
Nell'evento:
Conn = New OleDb.OleDbConnection(ConnString)
ConnString cosa vuole significare?
Pardon per la mia ignoranza
"Che differenza c'è tra un telescopio e una scarpa stretta? - Nessuna! Tutte due fanno vedere le stelle!"
**********
Homeworld 2, il gioco potente che ho mai incontrato!
Ciao Alexander.
"ConnString" è la stringa di connessione al database.
Nel mio caso:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source= |DataDirectory|\\Database.mdb;"
Perchè uso un Db di Access che si trova nella directory dell'applicazione.
Nel tuo caso:
????? (prova a vedere www.connesctionstring.com)
Facci sapere...
Ciao
Grazie mille
Dovrò studiare meglio i termini di Visual Basic 2005: c'è ancora parecchia strada che devo percorrere!
![]()
"Che differenza c'è tra un telescopio e una scarpa stretta? - Nessuna! Tutte due fanno vedere le stelle!"
**********
Homeworld 2, il gioco potente che ho mai incontrato!