PDA

Visualizza la versione completa : Firebird Embededd


FilSWS
26-09-2006, 17:32
Ho riscritto il mio piccolo gestionale con i componenti di Interbase, usando db Firebird, tutto ok.

Adesso volevo provare ad utilizzare Firebird Embedded.Da quello che ho capito non serve installare nessun server basta trasportare una DLL.

Ma non riesco a capire che impostazioni devo cambiare su IBDatabase.
Qualcuno me lo spiega o mi da una spinta?

Grazie

FilSWS
26-09-2006, 21:55
Mi spiego meglio...cerco per lo meno
La mia applicazione si collega ad un DB Firebird con il componenete IBDatabase.
Come si fa per dirgli al componenete IBDatabase di usare solo fbclient.dll (e quindi ipoteticamente mettere il programma/catalogo in un cd) senza cercare il "Firebird Server"??

Grazie

Nikk11
27-09-2006, 10:07
Originariamente inviato da FilSWS
Mi spiego meglio...cerco per lo meno
La mia applicazione si collega ad un DB Firebird con il componenete IBDatabase.
Come si fa per dirgli al componenete IBDatabase di usare solo fbclient.dll (e quindi ipoteticamente mettere il programma/catalogo in un cd) senza cercare il "Firebird Server"??

Grazie

Un programma che usa un DB client server non va solo con la libreria del client!
Devi copiarti assieme al gestionale tutta l'installazione di firebird embedded. non basta fbclient.dll. Tra l'altro i componenti ibexpress penso richiedano la libreria gds32.dll.
Cmq se leggi le release notes di firebird trovi spiegato tutto.

Ciao :ciauz: :ciauz:

alka
27-09-2006, 11:47
Non è possibile fare uso di FireBird Embedded usando i componenti IBX (InterBase Express), in quanto questi ultimi sono progettati per lavorare specificatamente con InterBase sfruttando i servizi che il database server mette a disposizione.

Per utilizzare FireBird Embedded, io faccio generalmente uso della libreria più generica, dbExpress, usando il driver per InterBase e modificando la proprietà VendorLib del componente TSQLConnection, che implementa la connessione, affinché faccia riferimento alla libreria fbembed.dll al posto di fbclient.dll o gds32.dll (in "modalità compatibile").

Temo che la scelta dei componenti ti impedisca di proseguire la tua strada.

Con la libreria dbExpress, invece, è possibile fare uso di FireBird Embedded: basta cambiare appunto il nome della libreria client di riferimento, come indicato sopra. Serve solamente la libreria fbembed.dll, non serve nient'altro.

Ciao! :ciauz:

Nikk11
27-09-2006, 13:45
Originariamente inviato da alka
Non è possibile fare uso di FireBird Embedded usando i componenti IBX (InterBase Express), in quanto questi ultimi sono progettati per lavorare specificatamente con InterBase sfruttando i servizi che il database server mette a disposizione.

Per utilizzare FireBird Embedded, io faccio generalmente uso della libreria più generica, dbExpress, usando il driver per InterBase e modificando la proprietà VendorLib del componente TSQLConnection, che implementa la connessione, affinché faccia riferimento alla libreria fbembed.dll al posto di fbclient.dll o gds32.dll (in "modalità compatibile").

Temo che la scelta dei componenti ti impedisca di proseguire la tua strada.

Con la libreria dbExpress, invece, è possibile fare uso di FireBird Embedded: basta cambiare appunto il nome della libreria client di riferimento, come indicato sopra. Serve solamente la libreria fbembed.dll, non serve nient'altro.

Ciao! :ciauz:

Oppure rinomini la dll fbembed.dll come gds32.dll e funziona tutto comunque anche con IBExpress.

Ciao :ciauz:

alka
27-09-2006, 14:31
Originariamente inviato da Nikk11
Oppure rinomini la dll fbembed.dll come gds32.dll e funziona tutto comunque anche con IBExpress.
I componenti IBX sono particolarmente "delicati" perché sviluppati in parallelo alle versioni di InterBase rilasciate. Mi è capitato di avere alcuni problemi di trattamento dei dati (per cui, poi, sono passato a DBX).

Se si procede con IBX, suggerisco di testare bene a fondo il funzionamento complessivo dell'applicazione per assicurarsi di non incappare in questi casi.

Il problema si amplifica se si parla dei componenti di amministrazione ("InterBase Admin").

Se si riesce a farli funzionare senza problemi, tanto meglio.

Ciao! :ciauz:

Loading