[B .NET] Aggiornamento tabelle

giovedì 26 marzo 2009 - 16.11

ilfurla Profilo | Newbie

Ciao a tutti,
ho creato, trascinando dalla casella degli strumenti di Visual Studio, una Connessione, un DataAdapter ed un DataSet (tre campi di una singola tabella). Ho legato con il DataBinding due di questi campi della tabella con due campi video. Ho aggiunto un pulsante per caricare i dati:

Dim jPar As String
jPar = InputBox("codice cliente: ")
OleDbDataAdapter2.SelectCommand.Parameters(0).Value = jPar
DataSet21.Clear()
OleDbDataAdapter2.Fill(DataSet21)

e poi un altro pulsante per aggiornare le eventuali modifiche:

Dim RetAgg As Integer
RetAgg = OleDbDataAdapter2.Update(DataSet21)
MsgBox(RetAgg)

Quando faccio clic sul primo pulsante, il programma mi chiede il codice e poi va ad aggiornare i due campi video. A questo punto modifico uno dei due campi e faccio clic sul secondo pulsante, ma non viene aggiornato nulla: il numero di record aggiornati è sempre 0.
Vorrei capire: come faccio a dire al DataAdapter che ho effettuato delle modifiche, delle cancellazioni o degli inserimenti in un DataSet?
Qualcuno può aiutarmi?
Grazie

alx_81 Profilo | Guru

>Ciao a tutti,
Ciao!

>ho creato, trascinando dalla casella degli strumenti di Visual
>Studio, una Connessione, un DataAdapter ed un DataSet (tre campi
>di una singola tabella). Ho legato con il DataBinding due di
>questi campi della tabella con due campi video. Ho aggiunto un
>pulsante per caricare i dati:
>
>Dim jPar As String
>jPar = InputBox("codice cliente: ")
>OleDbDataAdapter2.SelectCommand.Parameters(0).Value = jPar
>DataSet21.Clear()
>OleDbDataAdapter2.Fill(DataSet21)
>
>e poi un altro pulsante per aggiornare le eventuali modifiche:
>
>Dim RetAgg As Integer
>RetAgg = OleDbDataAdapter2.Update(DataSet21)
>MsgBox(RetAgg)
>
>Quando faccio clic sul primo pulsante, il programma mi chiede
>il codice e poi va ad aggiornare i due campi video. A questo
>punto modifico uno dei due campi e faccio clic sul secondo pulsante,
>ma non viene aggiornato nulla: il numero di record aggiornati
>è sempre 0.
>Vorrei capire: come faccio a dire al DataAdapter che ho effettuato
>delle modifiche, delle cancellazioni o degli inserimenti in un
>DataSet?
>Qualcuno può aiutarmi?
Ma scusa, passi il parametro alla selectcommand, non passi il parametro all'updatecommand prima di eseguire l'update?
prima bisogna costruire il comando di UPDATE:

http://msdn.microsoft.com/en-us/library/at8a576f.aspx

>Grazie
di nulla!
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ilfurla Profilo | Newbie

Ciao Alx_81,
ho provato a passare il parametro anche all'updateCommand come hai suggerito tu. Non so se ho toppato da qualche parte, ma il risultato è lo stesso: nessun errore e nessun record aggiornato.
Ho provato ad usare il metodo EndEdit() in questo modo:

DataSet.Tables("nometabella").Rows(0).EndEdit()

e funziona. Forse era solo quello.
Grazie
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5