Host Name
05-05-2007, 12:26
Sto studiando VB.NET 2005 ed in particolare mi sto concentrando sull' accesso
ai DB.
Ho una tabella di access il cui tracciato record è il seguente:
Matricola (chiave primaria)
Nome
Cognome
Login
Password
quest'ultimo campo (password) di default è vuoto perchè lo voglio
valorizzare successivamente con una applicazione VB.NET che accede al db,
calcola una password casuale alfanumerica per ogni riga e risalva i dati
aggiornati nel db; quello che non riesco ancora a far funzionare e salvare le
modifiche operate sul dataset all'interno del file di access; il codice
associato ad un tasto che esegue l'operazione è il seguente:
Dim conn As New OleDbConnection
conn.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source =
C:\ListaUtenti.mdb"
conn.Open()
Dim MaxRows As Integer
Dim i As Integer
Dim ds As New DataSet
Dim da As OleDbDataAdapter
Dim sql As String
sql = "SELECT * FROM LoginTable"
da = New OleDbDataAdapter(sql, conn)
da.Fill(ds, "dsLoginTable")
conn.Close()
MaxRows = ds.Tables("dsLoginTable").Rows.Count
For i = 0 To MaxRows - 1
ds.Tables("dsLoginTable").Rows(i).Item(4) = PassGenerator(8)
Next
DBGrid.DataSource = ds.Tables(0)
Dim cb As New OleDbCommandBuilder(da)
da.Update(ds,("dsLoginTable")
Passgenerator è una funzione che richiamo ogni volta che voglio generare la
mia password di 8 caratteri.
MI sono basato
su:http://msdn2.microsoft.com/it-it/library/xzb1zw3x(VS.80).aspx
per la procedura di aggiornamento; il dataset viene correttamente aggiornato
ma il db no, l'errore segnalato è:
ERRORE DI SINTASSI NELL'ISTRUZIONE UPDATE
Qualche suggerimento?
Grazie
ai DB.
Ho una tabella di access il cui tracciato record è il seguente:
Matricola (chiave primaria)
Nome
Cognome
Login
Password
quest'ultimo campo (password) di default è vuoto perchè lo voglio
valorizzare successivamente con una applicazione VB.NET che accede al db,
calcola una password casuale alfanumerica per ogni riga e risalva i dati
aggiornati nel db; quello che non riesco ancora a far funzionare e salvare le
modifiche operate sul dataset all'interno del file di access; il codice
associato ad un tasto che esegue l'operazione è il seguente:
Dim conn As New OleDbConnection
conn.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source =
C:\ListaUtenti.mdb"
conn.Open()
Dim MaxRows As Integer
Dim i As Integer
Dim ds As New DataSet
Dim da As OleDbDataAdapter
Dim sql As String
sql = "SELECT * FROM LoginTable"
da = New OleDbDataAdapter(sql, conn)
da.Fill(ds, "dsLoginTable")
conn.Close()
MaxRows = ds.Tables("dsLoginTable").Rows.Count
For i = 0 To MaxRows - 1
ds.Tables("dsLoginTable").Rows(i).Item(4) = PassGenerator(8)
Next
DBGrid.DataSource = ds.Tables(0)
Dim cb As New OleDbCommandBuilder(da)
da.Update(ds,("dsLoginTable")
Passgenerator è una funzione che richiamo ogni volta che voglio generare la
mia password di 8 caratteri.
MI sono basato
su:http://msdn2.microsoft.com/it-it/library/xzb1zw3x(VS.80).aspx
per la procedura di aggiornamento; il dataset viene correttamente aggiornato
ma il db no, l'errore segnalato è:
ERRORE DI SINTASSI NELL'ISTRUZIONE UPDATE
Qualche suggerimento?
Grazie