PDA

View Full Version : Interrogare un database da remoto ....


leon84
13-05-2003, 14:21
Allora vorrei realizzare un programma che si connetta ad un database posto su di un server .... Mi spiego : il programma dovrà funzionare come un semplice client in grado di interrogare il database che si trova su un server .... è possibile ? Come ?

cionci
13-05-2003, 14:28
Basta avere una database server con le pa@@e da poter usare tramite ADO...

MySQL, SQL Server, Oracle...e tanti altri...

leon84
13-05-2003, 14:35
Supponiamo che io utilizzi MySQL .... lo installo sulla mia macchina e realizzo un database .... Ora voglio creare un programma in Visual Basic che distribuirò e che mi si connetterà a quel database ... come faccio ? Ah scusa un'altra cosa .... perché non potrei utilizzare Access ? Se è per la questione degli accessi contemporanei non mi interessa .....

pippo985
13-05-2003, 16:33
Diciamo che Access serve per la rubrica e l'elenco delle videocassette. :D :D :D :D :D

cionci
13-05-2003, 16:34
Originally posted by "leon84"

Ah scusa un'altra cosa .... perché non potrei utilizzare Access ? Se è per la questione degli accessi contemporanei non mi interessa .....
Solo perchè Access non è adatto per queste cose... Come già detto Access non offre un sistema di accesso dall'esterno così ti devi appoggiare ad altri sistemi e di conseguenza non potresti più usare ADO, ma mi sembra che tu debba usare RDO (è un'altro sistema di acceso al DB)...

Con i DBMS seri invece basta usare il driver ODBC e specificare la stringa di connessione adatta nell'apertura della connessione ADO...

Per MySQL ad esempio:

"Driver={MySQL ODBC 3.51 Driver};Server=MyRemoteHost;Database=MyDatabase;Uid=MyUsername;Pwd=MyPassword;"

mjordan
14-05-2003, 17:46
Originally posted by "leon84"

Allora vorrei realizzare un programma che si connetta ad un database posto su di un server .... Mi spiego : il programma dovrà funzionare come un semplice client in grado di interrogare il database che si trova su un server .... è possibile ? Come ?

MySQL per esempio fornisce delle librerie native che ti consentono di effettuare una connessione e la manipolazione e gestione dei database in modo remoto. Trovi maggiori dettagli sul manuale ufficiale.

leon84
14-05-2003, 18:32
Grazie innanzitutto a tutti quelli che hanno risposto al thread . Qualcuno mi spiegherebbe in particolare come fare questa cosa ? Che componente di VB utilizzare .... ecc... ?

cionci
14-05-2003, 18:37
Tu con cosa ti connetti attualmente ai DB di Access ?

leon84
14-05-2003, 18:40
Con l'oggetto "Data" .

cionci
14-05-2003, 18:44
Allora devi usare ADO...


Private Sub Form_Load()
Dim db As New ADODB.Connection
Dim rs As New ADODB.Recordset
db.Open "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=nomeDB;Uid=user;Pwd=pass;"
On Error GoTo ErrorHandler
rs.Open "SELECT Username FROM Utenti;", db, adOpenDynamic, adLockPessimistic
On Error GoTo ErrorHandler
While Not rs.EOF
MsgBox rs("Username")
rs.MoveNext
Wend
GoTo EndProc
ErrorHandler:
MsgBox "Errore nel database"
EndProc:
End Sub