DataGrid

venerdì 01 ottobre 2004 - 11.48

assauei Profilo | Newbie

Ciao,

dopo aver visualizzato i dati di un db in un DataGrid è possibile fare questo:

modificare i dati nel datagrid a mano nell'applicazione in esecuzione, nell'interfaccia utente... per intenderci
e salvare le modifiche così fatte direttamente nel database...

???

Ci sono funzioni per il DataGrid che permettano di farlo?

assauei Profilo | Newbie

Ciao,

posso aggiornare il dataSet e fare l'update sul dataAdapter con:

DataSet1.GetChanges(DataRowState.Modified)
OleDbDataAdapter2.Update(DataSet1, "nome_tabella")

...ma come faccio a fare in modo che il dataset prenda le modifiche apportate al dataGrid dall'utente?

pecos81 Profilo | Junior Member

io generalmente associo i dati della datagrid ad un dataview.
Quando faccio l'update fa tutto lui

dv = New DataView(DS.Tables("Tabella"))
Datagrid.DataSource = DV

ciao

assauei Profilo | Newbie

dv = New DataView(DS.Tables("Tabella"))
Datagrid.DataSource = DV

...e come continua?
Non ho mica capito come funziona...

Ciao.

pecos81 Profilo | Junior Member

Carica i dati della tua tabella:

DA.SelectCommand = New OleDb.OleDbCommand("Select * from Tabella", DBS)
DA.Fill(DS, "Tabella")
DV = New DataView(DS.Tables("Tabella"))

associa i dati alla datagrid

datagrid.datasource = dv

ora tutte le modifiche che fai sulla griglia le fai sul dv

quando hai finito aggiorni il database

Dim oCommandBuilder As New OleDb.OleDbCommandBuilder(DA)
DA.InsertCommand = oCommandBuilder.GetInsertCommand
DA.UpdateCommand = oCommandBuilder.GetUpdateCommand
DA.Update(DS, "Tabella")

ciao

6969 Profilo | Junior Member

So che un vecchio argomento, ma l'ho trovato tra tra una ricerca e l'altra..

ho capito la logica, ma ho un nel SelectCommand del DataAdapter,scrivo il codice:

Dim myDataAdapter As System.Data.OleDb.OleDbDataAdapter
Dim dataset As System.Data.DataSet = New System.Data.DataSet
conn = New System.Data.OleDb.OleDbConnection(strPercorsoDB)
conn.Open()

myDataAdapter.SelectCommand = New System.Data.OleDb.OleDbCommand("Select * from UTENTI_MDT", conn)

myDataAdapter.Fill(dataset, "table")
myDataAdapter.Update(dataset, "table")
conn.Close()
DataGrid1.DataSource = dataset
DataGrid1.DataBind()

ottengo l'errore: "System.NullReferenceException: Object reference not set to an instance of an object" in corrispondenza della riga myDataAdapter.SelectCommand ....

puoi cortesemente aiutarmi
molte grazie
alessandro
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-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5