[Tech] Interbase

Marco Ermini markoer@markoer.org
Lun 20 Nov 2000 16:07:12 CET


Claudio Cicali wrote:
> 
> Beh, in realta' una cosa del genere esiste da anni e si
> chiama ODBC (Open database connectivity o qualcosa del genere).

Attenzione, non sono uno standard. E' una tecnologia Microsoft. Inoltre
non riesce ad astrarre completamente da ogni DB, anzi spesso impone una
sua sintassi che va a confliggere con quella del DB (chi ha avuto la
jella di dover programmare con ODBC ne sa qualcosa!!!)


> Su OS Microsoft e' all'ordine del giorno (anche se soppiantato
> da layer sempre piu' "astratti" e sempre piu' complessi come ADODB
> o OLEDB).

Anche qui attenzione: in realta' nel mondo Microsoft si va
paradossalmente nell'altra direzione: DAO (che e' il successore di ADO)
non e' un'astrazione ma una "specializzazione". Lo standard Microsoft
non e' piu' l'ODBC o comunque un suo successore (l'accesso a piu' DB) ma
al contrario l'accesso specifico ad Access o SQL Server. Access 2000 per
esempio non supporta piu' l'ODBC e puo' soltanto usare un file MDB o
connettersi a SQL Server. Office 2000 puo' soltanto usare Access o SQL
Server (a meno che non esistano oggetti DAO modificati che accedano ad
altri DB).


> Esiste anche una cosa del genere per Java (JDBC)

In Java esistono tre layer di driver diversi che sono tutti disponibili
tramite le API di JDBC. La cosa bella e' che se un driver e' layer 3
(tutto scritto in Java) si puo' usare da tutti i sistemi operativi (io
ho usato Sybase con Linux su Sparc, ad esempio).


> So che esistono implementazioni ODBC anche per Unix (Open ODBC ?)
> ma non le ho mai provate.

Esiste un mondo molto frastagliato fra OpenLink, OpenODBC, FreeTDS ecc.
ecc. ma non esiste qualcosa di "standard". Nel mondo Unix/Linux ogni
linguaggio ha i "propri" standard (es. PHP e Perl implementano un
proprio specifico accesso a vari DB, Python ha le sue DB API ecc.).


> Il "problema" con ODBC e' che il fornitore del DBMS deve fornire
> il driver (attraverso il quale vengono fatte le chiamate "native"
> dal layer "astratto" dell'applicazione).

Cosi' come anche il Java, in realta'

> 
> cfr.:
> http://www.openodbc.org/
> http://www.openlinksw.com



ciao ciao ciao


> 
> In data 01:26 PM 11/20/00 +0100, Franco Bagnoli ha scritto:
> >On Mon, 20 Nov 2000, Marco Ermini wrote:
> >
> > > una risposta precisa, o meglio la risposta e': DIPENDE... ;-) dipende da
> > > cosa vuoi fare e da come lo fai. Il DB dovrebbe essere scelto dopo che
> > > tutta l'applicazione e' gia' stata progettata... certo se PostgreSQL,
> >
> >allora: esiste un sistema per astrarre le caratteristiche del database
> >dall'implementazine delle chiamate? qualcosa tipo il tie del perl (che
> >pero' e' limitato) o una libreria "generica" in modo da cambiare database
> >"in corsa" senza riscrivere tutto il software?
> >
> >--
> >Franco Bagnoli
> >Dipartimento di Matematica Applicata "G. Sansone"
> >Universita' di Firenze, Via S. Marta, 3 I-50139 Firenze, Italy
> >tel. +39 0554796422, fax: +39 055471787
> >e-mail: bagnoli@dma.unifi.it
> >
> >
> >_______________________________________________
> >FLUG - Discussioni tecniche - tech@firenze.linux.it
> >URL: http://lists.firenze.linux.it/mailman/listinfo/tech
> >Archivio: http://lists.firenze.linux.it/pipermail/tech
> >Ricerca nell'archivio: http://www.firenze.linux.it/search
> 
> _______________________________________________
> FLUG - Discussioni tecniche - tech@firenze.linux.it
> URL: http://lists.firenze.linux.it/mailman/listinfo/tech
> Archivio: http://lists.firenze.linux.it/pipermail/tech
> Ricerca nell'archivio: http://www.firenze.linux.it/search




Maggiori informazioni sulla lista flug-tech