|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Feb 2008
Messaggi: 70
|
[VB. Net] Lettura database
Salve a tutti.
Il mio problema può sembrare una sciocchezza ma io non ci sto piu capendo niente.. Ho programmato molto con visual basic 6 e ho fatto tanti bei programmini interfacciati con i miei database. Ho voluto fare il salto e passare a visual basic 2008 che utilizza la tecnologia .Net. Ho guardato tanti tutorial in giro ma ognuno ha un modo diverso e tanti a volte neanche funzionano. Volevo semplicemente sapere com'è il comando da dare per interrogare il mio database (ACCESS 2007) con una stringa sql e mettere il risultato dentro una textbox.. Tanto x capirsi Textbox1.text = ????? Grazie P.s. La fase di connessione al db l'ho già fatta Dim PercorsoDB As String = "C:\Users\Alessio\Documents\esami.accdb" Dim ConnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & PercorsoDB Dim Cn As New OleDbConnection(ConnString) |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Feb 2008
Messaggi: 70
|
Ho risolto..
Vi posto la parte di codice così che se avete migliorie da consigliarmi possiate farlo o se semplicemente vi siete trovati nella mia stessa situazione.. Dim PercorsoDB As String = "C:\percorso\esami.accdb" Dim ConnString As String = "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=" & PercorsoDB Dim Cn As New OleDbConnection(ConnString) Dim Ds As DataSet() Dim cmd As OleDbCommand Dim Dr As OleDbDataReader Cn.Open() cmd = New OleDbCommand("SELECT DOMANDA,A,B,C,D FROM esami") Dr = cmd.ExecuteReader Dr.Read() TextBox1.Text = Dr(1) TextBox2.Text = Dr(2) TextBox3.Text = Dr(3) TextBox4.Text = Dr(4) TextBox5.Text = Dr(0) Dr.Close() Cn.Close() Ogni volta che si lancia Dr.Read() legge il record successivo. |
|
|
|
|
|
#3 | ||
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Quote:
A parte il fatto del DataSet Ds, che crei e, almeno nel codice postato, poi non usi mai, non ho ben chiaro lo scopo che volevi raggiungere |
||
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Feb 2008
Messaggi: 70
|
Beh hai ragione il dataset non l'ho usato semplicemente perchè faceva parte di un tentativo precedente.. ho dimenticato di eliminare la dichiarazione.
Semplicemente volevo leggere un record del database e poi volevo inserirlo in alcuni textbox.. Comunque se hai soluzioni migliori sono tutto orecchie.. questa è stata una soluzione che con qualche accortezza sono riuscito a far funzionare.. sicuramente sarà una soluzione contadina.. eheheh |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
In poche parole, carichi la tabella delle domande in un DataSet, e poi accedi alle singole Rows del DataSet stesso passando l'indice di Row : Codice:
DataSet.Tables(index As Integer).Rows(index As Integer) |
|
|
|
|
|
|
#6 |
|
Member
Iscritto dal: Feb 2008
Messaggi: 70
|
Funziona! Grazie per l'aiuto! ormai ti sfrutto fino alla fine eheh
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: May 2002
Messaggi: 341
|
Quote:
un paio di consigli: - fai un test sul metodo "dr.read", cosi' da poter gestire il caso in cui non trovi i dati. - per leggere il field del datareader, puoi anche usare il nome del campo, oltre che il suo indice Codice:
Dim PercorsoDB As String = "C:\percorso\esami.accdb"
Dim ConnString As String = "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=" & PercorsoDB
Dim Cn As New OleDbConnection(ConnString)
Dim Ds As DataSet()
Dim cmd As OleDbCommand
Dim Dr As OleDbDataReader
Cn.Open()
cmd = New OleDbCommand("SELECT DOMANDA,A,B,C,D FROM esami")
Dr = cmd.ExecuteReader
if Dr.Read() then
TextBox1.Text = Dr("A")
TextBox2.Text = Dr("B")
TextBox3.Text = Dr("C")
TextBox4.Text = Dr("D")
TextBox5.Text = Dr("DOMANDA")
else
' dati non trovati...
end if
Dr.Close()
Cn.Close()
__________________
Lone Loser: un'avventura grafica punta e clicca! http://loneloser.altervista.org |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
La risposta è : dipende... Se ad esempio vuoi mantenere il tuo DB Access, che magari sta su FTP, ti rimando qui : http://www.hwupgrade.it/forum/showthread.php?t=2002757 E comunque, per quanto ne so io, la risposta è No. |
|
|
|
|
|
|
#9 |
|
Junior Member
Iscritto dal: Mar 2010
Messaggi: 14
|
Scusate io ho un problema riguardante l'aggiornamento del DB dopo aver cancellato una riga dalla Table. In pratica il metodo update del dataadapter non fa nulla! Voi sapreste suggerirmi una possibile causa?
GRaize |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:00.




















