Ciao a tutti, ho scritto il seguente codice sulla base di un paio di esempi trovati sul web... non mi da alcun errore, ma neanche mi scrive sul db. Mi sapreste dare una mano cortesemente?
L'array sArr(,) é pieno, mi son fatto buttare a schermo i result e ci sono 254 posizioni piene di dati.
Sbaglio sicuramente qualcosa io perché é la prima volta che mi interfaccio con un db in questo modo. Grazie per un help.
AGGIORNAMENTO: Ho anche provato a sostituire la parte finale di codice prima così...
adapter.UpdateCommand = builder.GetUpdateCommand
e poi così...
adapter.InsertCommand = builder.GetInsertCommand
ma nada di nada, non scrive su db e non da errori.
Mi son fatto anche buttare a schermo alcuni valori delle new rows e i dati sono presenti; però ci sono i dati delle newrow e non quelli originariamente presenti nella tabella.
Dim strQ As String = "SELECT tbl_Wandetail.* FROM tbl_Wandetail"
db2Open()
Dim adapter As New OleDb.OleDbDataAdapter
adapter.SelectCommand = New OleDb.OleDbCommand(strQ, cnc)
Dim builder As OleDb.OleDbCommandBuilder = New OleDb.OleDbCommandBuilder(adapter)
Dim tbl As New DataTable
adapter.Fill(tbl)
Dim dr(sArr.GetUpperBound(0)) As DataRow
tbl.Columns.Item(0).ColumnName = "ID_Wandetail"
Dim dc0 As DataColumn = tbl.Columns.Item(0)
tbl.Columns.Item(1).ColumnName = "wanIP"
Dim dc1 As DataColumn = tbl.Columns.Item(1)
tbl.Columns.Item(2).ColumnName = "Redundant"
Dim dc2 As DataColumn = tbl.Columns.Item(2)
tbl.Columns.Item(3).ColumnName = "Description"
Dim dc3 As DataColumn = tbl.Columns.Item(3)
tbl.Columns.Item(4).ColumnName = "nodeTypeId"
Dim dc4 As DataColumn = tbl.Columns.Item(4)
tbl.Columns.Item(5).ColumnName = "wanListId"
Dim dc5 As DataColumn = tbl.Columns.Item(5)
tbl.Columns.Item(0).DataType = GetType(Integer)
tbl.Columns.Item(0).Unique = True
tbl.Columns.Item(0).AutoIncrement = True
tbl.Columns.Item(1).DataType = GetType(String)
tbl.Columns.Item(2).DataType = GetType(Boolean)
tbl.Columns.Item(3).DataType = GetType(String)
tbl.Columns.Item(4).DataType = GetType(Integer)
tbl.Columns.Item(5).DataType = GetType(Integer)
For z = 0 To sArr.GetUpperBound(0) Step 1
dr(z) = tbl.NewRow
dr(z)(dc1) = sArr(z, 0).ToString()
If sArr(z, 1) = "R" Then
dr(z)(dc2) = True
Else
dr(z)(dc2) = False
End If
dr(z)(dc3) = ""
dr(z)(dc4) = 2
dr(z)(dc5) = ID_wl
Next
builder.GetUpdateCommand()
adapter.Update(tbl)
adapter.Dispose()
db2Close()
Modificato da Lybra1983 il 26 novembre 2009 13.55 -
Modificato da Lybra1983 il 26 novembre 2009 14.05 -