Per prima cosa devo creare la coppia String e Connection, in quanto la connection si serve della string per connettersi al database.
Ecco:
Dim connString As String = "Provider = Microsoft.Jet.OLEDB.4.0; data source = C:\users\antonello\documents\anto.mdb" Dim conn As New OleDbConnection(connString)Questo funziona.
Ora devo vedere bene come si gestiscono i comandi.
Il command accetta due parametri: una query e la connessione, che deve però essere già stata inizializzata con la stringa di connessione.
Quindi, prima creiamo la connessione con la stringa di connessione per parametro, quindi il comando con per parametri la query e la connessione.
Dim conn As OleDbConnection Dim cString As String = "Provider = Microsoft.Jet.OLEDB.4.0; data source=C:\users\antonello\Documents\anto.mdb" conn = New OleDbConnection(cString) Dim command As New OleDbCommand("select * from pazienti", conn)O anche:
Dim conn As OleDbConnection Dim cString As String = "Provider = Microsoft.Jet.OLEDB.4.0; data source=C:\users\antonello\Documents\anto.mdb" conn = New OleDbConnection(cString) Dim query As String = "select * from pazienti" Dim command As New OleDbCommand(query, conn)Per un migliore aiuto mnemonico:
Dim conn As OleDbConnection Dim cString As String = "Provider = Microsoft.Jet.OLEDB.4.0; data source=C:\users\antonello\Documents\anto.mdb" conn = New OleDbConnection(cString) Dim query As String = "select * from pazienti" Dim command As New OleDbCommand(query, conn)
Ora leggiamo i dati che ci sono nel database, mediante la query.
Per fare questo c'è un oggetto OLEDBDataReader.
Dim reader As OleDbDataReader reader = command.ExecuteReaderPer mezzo di questo reader si possono elencare le voci presenti nella tabella.
Però, mentre il command, (e ovviamente la connessione) può essere inizializzato senza che la connessione sia aperta, il reader, che esegue un'azione, richiede sempre la connessione aperta, altrimenti genera un errore:
conn.Open() Dim reader As OleDbDataReader reader = command.ExecuteReader While (reader.Read) MsgBox(reader.GetString(1)) End While conn.Close()
In questo modo ottengo una serie di MessageBoxes contenenti le stringhe del campo n.1.
Ora andiamo avanti e creiamo un DataAdapter, che avrebbe la funzione di prendere tutti i dati del database (forse quelli selezionati dalla query...).
Nessun commento:
Posta un commento