Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

oracle

5 views
Skip to first unread message

Mr.X

unread,
Dec 30, 2009, 9:30:44 AM12/30/09
to
avrei la necessita' di "collegare" il db a VB; ho qualche pezzo del
mosaico in testa, ma non riesco a completare l'immagine. ho provato a
spippolare sull'Origine dati ODBC e a provare qualche stringa di
connessione in vb, ma niente.
quali sono i passi da fare?
grazie

Luca D

unread,
Dec 30, 2009, 2:50:57 PM12/30/09
to

Se vuoi usare ODBC, devi:

- Installare il client Oracle
- Configurare un alias per la connessione, utilizzando il Net
Configuration Assistant (o Net Easy Config o come si chiama adesso
quel tool, gli cambiano nome in continuazione...); oppure tagli la
testa al toro e modifichi direttamente il file di testo 'tnsnames.ora'
- Configurare un origine dati ODBC usando l'alias visto sopra come
nome del server

A quel punto, è una normale connessione come le altre.

Mr.X

unread,
Dec 31, 2009, 3:33:15 AM12/31/09
to

>Se vuoi usare ODBC, devi:
>
>- Installare il client Oracle
>- Configurare un alias per la connessione, utilizzando il Net
>Configuration Assistant (o Net Easy Config o come si chiama adesso
>quel tool, gli cambiano nome in continuazione...); oppure tagli la
>testa al toro e modifichi direttamente il file di testo 'tnsnames.ora'
>- Configurare un origine dati ODBC usando l'alias visto sopra come
>nome del server
>

>A quel punto, =E8 una normale connessione come le altre.

il client oracle e' installato: con SQL Plus infatti posso accedere al
database; ho provato ad aprire il file tnsnames.ora che riporto:

# tnsnames.ora Network Configuration File:
C:\Oracle\product\10.1.0\Client_2\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

CRIBBIO =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.3)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = cribbio)
)
)

quindi nell'origine dati ODBC ho creato un DSN di sistema chiamato:

cribbio (Microsoft ODBC for Oracle)

e ci ho messo:
nome origine dati: cribbio
descrizione: descrizione a piacimento
nome utente: l'utenza che ho inserito quando ho provato SQL Plus
password: la password che ho inserito quando ho provato SQL Plus
Server: l'indirizzo IP del server Oracle

il programma VB per testare la connessione al database e' il seguente:

Dim Cn As ADODB.Connection

Private Sub Form_Load()

Set Cn = New ADODB.Connection
On Error GoTo DSNFailure
Cn.Open "DSN=cribbio"
On Error GoTo 0
Cn.Close

ExitPoint:
Set Cn = Nothing
Exit Sub

DSNFailure:
MsgBox "DSN Connection Failed"
Resume ExitPoint

End Sub

mi restituisce sempre l'errore...

Luca D

unread,
Dec 31, 2009, 11:19:03 AM12/31/09
to
On Dec 31, 9:33 am, mist...@misterx.com (Mr.X) wrote:
[...]

> quindi nell'origine dati ODBC ho creato un DSN di sistema chiamato:
>
> cribbio (Microsoft ODBC for Oracle)
>
> e ci ho messo:
> nome origine dati: cribbio
> descrizione: descrizione a piacimento
> nome utente: l'utenza che ho inserito quando ho provato SQL Plus
> password: la password che ho inserito quando ho provato SQL Plus
> Server: l'indirizzo IP del server Oracle

Vedi sopra:
Quando crei l'origine dati ODBC, il nome di alias "cribbio" lo devi
usare *NEL CAMPO SERVER*, non nel nome del data source, che puoi
chiamare come ti pare

Nella stringa ti connessione, è meglio anche specificare almeno la
password, perchè non mi risulta che venga salvata nel Data Source; a
quel punto passa anche l'utente

Cn.Open "DSN=XXX;Uid=YYYY;Pwd=ZZZ"


Mr.X

unread,
Jan 4, 2010, 4:37:15 AM1/4/10
to
>Vedi sopra:
>Quando crei l'origine dati ODBC, il nome di alias "cribbio" lo devi
>usare *NEL CAMPO SERVER*, non nel nome del data source, che puoi
>chiamare come ti pare
>
>Nella stringa ti connessione, =E8 meglio anche specificare almeno la
>password, perch=E8 non mi risulta che venga salvata nel Data Source; a

>quel punto passa anche l'utente

bene, ora funziona tutto. come stringa di connessione ho impostato:

db.ConnectionString = "Password=" & password & ";UID=" & utente &
";Data Source=" & dsn
non ho ben capito l'impostazione del Provider nella stringa di
connessione (in alcune guide online l'avevo trovato), ma funziona
(anche) senza impostarlo.
grazie


0 new messages