Newsgroup: it.comp.lang.visual-basic
Titolo: Domanda su ODBC...

Salve,
mi stò addentrando nel mondo ADO, e per forza di cose ho duvuto rivedere DAO
e scoprire RDO :)) Molto spesso si parla di ODBC/Ole ODBC. Per quanto
riguarda l' ODBC forse un po ci sono, però mi mancano alcuni pezzi che
chiudono il cerchio, ed essendo ADO la conclusione di tutta stà roba
qua...mi serve di capire bene.
C' è qualcuno volenteroso che possa farmiun quadro riassuntivo di come sono
legati tutti questi nomi trà loro? Magari...Pal. Moreno Sirri, BORRELLII!!
etc etc :)) Senza nulla togliere agli altri, si capisce.
Aspetto news, grazie.
Saluti ciao ciao.
PS: si, ogni volta lo riscrivo, e non me lo chiedete più!! ;))

Ciao, Francesco
ADO rappresenta la tecnologia Microsoft per accedere a tutte (sono le
intenzioni di M$) le fonti di dati.
Quindi ad informazioni non solo riferite a DB di tipo relazionale, ma anche
a files di testo, messaggistica
eccc.... Per far questo si appoggia ad OLE DB, che è uno standard "aperto"
per l'accesso a tutti i tipi
di dati. Lo standard ODBC, creato per l'accesso a db relazionali, è incluso
in OLE DB, per permettere
l'accesso diretto a questi ultimi tramite i relativi drivers.
Per cui in un applicazione client, che utilizzando ADO, lo schema di massima
è
                                        ------------------------------------
--
                                        |        Applicazione Client
|
                                        ------------------------------------
--
                                                                    |
                                        ------------------------------------
--
                                        |               ADO
|
                                        ------------------------------------
--
                                                                    |
                                        ------------------------------------
--
                                        |        OLE DB
|
                                        ------------------------------------
--
                                                |
|
                                        ---Provider --    ----Provider -----
--
                                        |        ODBC  |  |      Altre fonti
dati  |
                                        ---------------  -------------------
--
                                        DB RDBMS     Main Frame, VSA/ISAM
messaggistica, file testo eccc...
Per il momento è quanto riesco a mettere su.
Ciao, Vito
-- 
Posted from 
smtp3.libero.it
 [193.70.192.53] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Ciao,
grazie per la risposta. Ok, quindi, facendo un piccolo sunto dimmi se 
ho capito la storia. Esisisteva DAO e RDO, il primo per collegarsi 
direttamente a database (relazionali), mentre il secondo (RDO) per 
oggetti dati remoti. La Microsoft ha unito i due in ADO sfruttando 
le "singole" proprietà dei due tipi di accesso ai dati, e 
implementadone di nuove come l' estensione a qualunque tipo di dato (e 
non più solo a dati contenuti in db). Per far questo ADO usa OLE DB, 
standard che permette la visualizzazione di qulunque tipo di dato. L' 
ODBC (presente già in DAO e RDO) non è altro che il mezzo fisico di 
collegamento, il quale (collegamento) avviene per mezzo dei drivers 
dell' ODBC (che poi, sono i driver per il database a cui ci si deve 
collegare immagino) trà l' apllicazione e qualunque forma di dato. Si 
può quindi schematizzare il tutto come:
   Applicazione--->ADO--->Dati
        |                   |
        |_________ODBC______|
Concordi?
Saluti, ciao ciao.
-- 
Posted from 212.29.130.175 by way of 
smtp2.libero.it
 [193.70.192.52] 


Ciao,
Da come hai replicato alla risposta non sembri .... a corto di informazioni.
Comunque il giro
che hai sintetizzato vale per i RDBMS. In generale la differenza la fa il
provider dei driver .
In una tipica dichiarazione per l'apertura della connnessione ADO come
nell'esempio,
di un DB SQLServer   :
Dim DBConn  As ADODB.Connection
Set DBConn = New ADODB.Connection
DBConn.CursorLocation = adUseClient
On Error GoTo eh
DBConn.ConnectionString = "Provider=MSDASQL.1;DSN=MYSOURCE;User
ID=sa;Password=;Initial Catalog=TABELLA;"
DBConn.Open
La chiave di tutto č il Provider dei driver, in questo caso
Provider=MSDASQL.1
Per continuare ad usare i driver Microsoft Jet l'esempio potrebbe essere,
per un DB Access  :
Dim adoCn As adoDb.Connection
Dim adoRs As adoDb.Recordset
Dim strCn As String
   strCn = App.Path & "\adoGUID.mdb"
   Set adoCn = New adoDb.Connection
    With adoCn
        ' In questo caso č necessario solo il Provider
       .Provider ="Microsoft.JET.OLEDB.3.51"
       .Open strCn, "admin", ""
   End With
Come vedi, anche in questo caso
la chiave di tutto č il Provider dei driver
.Provider = "Microsoft.JET.OLEDB.3.51"
Ciao, Vito
-- 
Posted from 
smtp3.libero.it
 [193.70.192.53] 


 come nell'esempio, di un DB SQLServer...
Spetta spetta, facciamo una cosa piů semplice, non parliamo ancora di 
SQLServer che non conosco, dicimao che io ho nel mio pc un database 
Access, (C:\Temp\skunk.mdb) aiutami a vedere un eventuale stesura di 
codice per collegarmi e fare un po di operazioni su questo db. Iniziamo.
Private Sub Command1_Click()
    Dim strDbPath As String
    Dim rs As Recordset
 
    strDbPath = "C:\Temp\skunk.mdb"
 
creo una connessione al database
    connection.Open strDbPath
 
creo un comando
    Command cmd = New ADODB.Command
 
    fingiamo che nel db skunk esista la tabella mp3 e che sia composta 
dai campi titolo e autore
    cmd.CommandText = "Select * from mp3"
 
eseguo il comando
 
    ho trovato in rete un esempio dove spiega che mettere qui, ma non 
ho mica capito a che si riferiscono quei campi, ti ricopio 
    quanto c'č scritto:
    connection.Execute(TestoComando, Recordinteressati, Opzioni)
    command.Execute(RecordInteressati, Parameters, Opzioni)
    Recordset.Open Fonte, ConnessioneAttiva, TipoCursore, TipoBlocco, 
Opzioni
 
vorrei cercare un record
    rs.MoveFirst
    Do While Not rs.EOF
        Debug.Print "Titolo: " & rs!titolo & " Autore" & rs!autore
        rs.MoveNext
    Loop
End Sub
Finito cosě? Questo č quanto?
Aspetto news, grazie.
Saluti, ciao ciao.
-- 
Posted from 212.29.130.175 by way of 
smtp4.libero.it
 [193.70.192.54] 
