+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 8 su 8

VB6 e Database Firebird

  1. #1
    ROCMAN non è in linea Novello
    Salve, uso da parecchio tempo Visual basic 6.0 per piccole applicazioni ma non ho mai lavorato su database. Adesso ho la necessità di sviluppare una piccola procedura che visualizzi i dati di un database Firebird utilizzato da un altro gestionale. Preciso che devo solo visualizzarli possibilmente in delle Combobox ma non so come fare. Qualcuno potrebbe darmi qualche dritta e magari degli esempi ? Grazie

  2. #2
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Google --> MSDN ADO.
    Coraggio!
    ℹ️ Leggi di più su Brontolo ...

  3. #3
    L'avatar di gibra
    gibra non è in linea Very Important Person
    Quote Originariamente inviato da ROCMAN Visualizza il messaggio
    Salve, uso da parecchio tempo Visual basic 6.0 per piccole applicazioni ma non ho mai lavorato su database. Adesso ho la necessità di sviluppare una piccola procedura che visualizzi i dati di un database Firebird utilizzato da un altro gestionale. Preciso che devo solo visualizzarli possibilmente in delle Combobox ma non so come fare. Qualcuno potrebbe darmi qualche dritta e magari degli esempi ? Grazie
    Intanto per quanto riguarda l'accesso ai dati va fatto con ADO.
    Puoi prendere spunto dal questo progetto:
    Progetto Prova Login

    Una volta che hai capito come funziona, basterà cambiare la stringa di connessione per accedere al database Firebird.

    Ovviamente vi sono fasi preliminari da eseguire:
    0. documentarti bene su Firebird
    Firebird - The RDBMS that's going where you're going
    1. scaricare ed installare il server di Firebird sul tuo pc, ed il driver di accesso ai dati (occhio alla versione di Firebird usata dal gestionale).
    2. fare delle prove di accesso ai dati usando una copia del db del gestionale in locale, in alternativa un qualsiasi altro db.
    3. dopo aver aperto una connessione al db, dovrai recuperare la struttura delle tabelle di cui devi recuperare i dati.
    4. dopo potrai caricare i dati nei tuoi Combobox.

    ℹ️ Leggi di più su gibra ...

  4. #4
    ROCMAN non è in linea Novello
    Quote Originariamente inviato da Brontolo Visualizza il messaggio
    Google --> MSDN ADO.
    Coraggio!
    Ciao, ti ringrazione per la risposta e per l'incoraggiamento ma sono 15gg che cerco su google ed altro ma trovo solo riferimenti a VB.NET oppure per Access e non credo che siano la stessa cosa.

    Non sai dove posso trovare degli esempi specifici per Visual basic 6.0 ?

    Grazie ancora

  5. #5
    ROCMAN non è in linea Novello
    Ti ringrazio per le dritte che sono state molto utili, ho studiato degli esempi con Access che mi hanno funzionato correttamente ma non riesco a trovare la giusta stringa di connessione per Firebird. Qualsiasi prova faccia mi compare il messaggio "Errore di runtime 80004005 - Microsoft Driver Manager ODBC Nome origine dati non trovato e driver predefinito non specificato. Il driver di Firebird dovrebbe esserci perchè sul pc dove lavoro c'è installato il software che utilizza quel database.

    Le stringhe che ho provato sono queste:

    'connConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\_ProvaDB2\Database1.mdb"

    'connConnection.Open "Driver=Firebird/InterBase(r) driver" & "dbname=c:\microshop\newmicro.gdb;" & "Uid=SYSDBA;Pwd=masterkey;"

    'connConnection.Open "driver={Easysoft IB6 ODBC}; Server=127.0.0.1; Database=C:\MicroShop\newmicro.gdb; Uid=SYSDBA; Pwd=masterkey;"

    'connConnection.Open "DRIVER=Firebird/InterBase(r) driver;UID=SYSDBA;PWD=masterkey;DBNAME=c:\MicroSho p\newmicro.gdb"

    'connConnection.Open "User=SYSDBA;Password=masterkey;Database=c:\MicroS hop\newmicro.gdb;DataSource=localhost;Port=3050;Di alect=3;Charset=NONE;Role=;Connection lifetime=15;Pooling=true;MinPoolSize=0;MaxPoolSize =50;Packet Size=8192;ServerType=0"

    'connConnection.Open "DRIVER=Firebird/InterBase(r) driver; UID=SYSDBA; PWD=masterkey;DBNAME=localhost:c:\microshop\newmic ro.gdb"



    connConnection.Open "User=SYSDBA;Password=masterkey;" & _
    "Database=\newmicro.gdb;" & _
    "DataSource=localhost;Charset=NONE;"

    ma nessuna funziona.

    In VB ho messo i riferimenti Microsoft ActiveX Data Objects 2.7 Library e Microsoft Data Binding Collection

    Dove sbaglio ?
    Grazie

  6. #6
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Quote Originariamente inviato da ROCMAN Visualizza il messaggio
    Ciao, ti ringrazione per la risposta e per l'incoraggiamento ma sono 15gg che cerco su google ed altro ma trovo solo riferimenti a VB.NET oppure per Access e non credo che siano la stessa cosa.

    Non sai dove posso trovare degli esempi specifici per Visual basic 6.0 ?

    Grazie ancora
    Veramente cercando con Google MSDN ADO si arriva facilmente qui
    Microsoft ActiveX Data Objects (ADO)

    Per le stringhe di connessione ti consiglio di guardare qui
    ConnectionStrings.com - Forgot that connection string? Get it here!

    Riguardo al driver ODBC, il fatto che ci sia un altro software che riesce ad accedere al database non è una prova che sia installato.
    Non sono esperto di Firebird, (mi pare che sspintux lo sia) ma non dovrebbe essere difficile reperire il driver ODBC ed installarlo.
    ℹ️ Leggi di più su Brontolo ...

  7. #7
    L'avatar di gibra
    gibra non è in linea Very Important Person
    Quote Originariamente inviato da ROCMAN Visualizza il messaggio
    Qualsiasi prova faccia mi compare il messaggio "Errore di runtime 80004005 - Microsoft Driver Manager ODBC Nome origine dati non trovato e driver predefinito non specificato. Il driver di Firebird dovrebbe esserci perchè sul pc dove lavoro c'è installato il software che utilizza quel database.
    Non è detto, se il programma è fatto con un altro linguaggio, ad esempio Delphi, il driver potrebbe non essere installato (ed in genere non lo è).
    Sicuramente hai installato il Server.
    Per il client devi controllare nel Pannello di Controllo di Window, nell'applet Installazione programmi in cui deve apparire:

    FirebirdClient xxxxx (ove xxxxx è la versione del driver)

    Se no c'è, devi installarlo.

    Quote Originariamente inviato da ROCMAN Visualizza il messaggio
    Le stringhe che ho provato sono queste:
    Prima di analizzare la stringa di connessione, controlla se hai il client.
    Anche perchè il percorso del DB non mi pare esattamente uguale in tutte le stringhe

    Comunque, questa è la stringa di connessione che uso io, e funziona senza problemi:
    
    Pubbli Function OpenFirebirdDB () As Boolean 
        Dim sDBName As String
        Dim CN As ADODB.Connection
        Dim sUser As String
        Dim sPwd As String
    
      
        sDBName = <....>
        If Dir(sDBName) = "" Then
            MsgBox "Database non trovato.", vbExclamation
            Exit Function
        End If
    
        sUser = <....>
        sPwd = <....>
    
        Set CN = New ADODB.Connection
        With CN
            .ConnectionString = "Driver=Firebird/InterBase(r) driver;UID=" & sUser & ";PWD=" & sPwd & ";DBNAME=" & sDBName & ";"
            .CursorLocation = adUseClient
            .Mode = adModeRead
            .Open
        End With
    
        OpenFirebirdDB = True
    
    Quote Originariamente inviato da ROCMAN Visualizza il messaggio
    In VB ho messo i riferimenti Microsoft ActiveX Data Objects 2.7 Library e Microsoft Data Binding Collection
    Sarebbe meglio ADO 2.8, che è quella pre-installata da Windows XP in poi.
    La seconda non serve a niente, a meno che tu non abbia la pessima idea di usare il binding dei controlli.

    ℹ️ Leggi di più su gibra ...

  8. #8
    ROCMAN non è in linea Novello
    Quote Originariamente inviato da gibra Visualizza il messaggio
    Non è detto, se il programma è fatto con un altro linguaggio, ad esempio Delphi, il driver potrebbe non essere installato (ed in genere non lo è).
    Sicuramente hai installato il Server.
    Per il client devi controllare nel Pannello di Controllo di Window, nell'applet Installazione programmi in cui deve apparire:

    FirebirdClient xxxxx (ove xxxxx è la versione del driver)

    Se no c'è, devi installarlo.

    Prima di analizzare la stringa di connessione, controlla se hai il client.
    Anche perchè il percorso del DB non mi pare esattamente uguale in tutte le stringhe


    Ragazzi siete stati grandi, grazie a tutti.

    L'indirizzo del db era solo indicativo, preso da alcuni esempi che avevo trovato su Internet, il problema era che in effetti mancava la parte client, dopo averla installata ha funzionato tutto.

    Grazie ancora

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. PHP Firebird non funziona
    Da Speed16 nel forum Altri Database Server
    Risposte: 1
    Ultimo Post: 02-11-2013, 14:31
  2. Risposte: 2
    Ultimo Post: 29-10-2013, 21:20
  3. Risolto: Connessione a un database FireBird (.fdb) con dbExpress
    Da Delphiprogrammer nel forum Delphi
    Risposte: 5
    Ultimo Post: 04-03-2013, 14:56
  4. Perdita dati database Firebird
    Da cosimo_cin nel forum Delphi
    Risposte: 1
    Ultimo Post: 03-12-2007, 16:24
  5. [Firebird]Editor gratuiti
    Da Morpheus80 nel forum Altri Database Server
    Risposte: 2
    Ultimo Post: 04-05-2007, 21:09