<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>Database-SQL-RDBMS HOW-TO document for Linux (PostgreSQL Object Relational Database System): Driver d'interfaccia ai database di Perl, per PostgreSQL (DBI) </TITLE> <LINK HREF="PostgreSQL-HOWTO-15.html" REL=next> <LINK HREF="PostgreSQL-HOWTO-13.html" REL=previous> <LINK HREF="PostgreSQL-HOWTO.html#toc14" REL=contents> </HEAD> <BODY> <A HREF="PostgreSQL-HOWTO-15.html">Avanti</A> <A HREF="PostgreSQL-HOWTO-13.html">Indietro</A> <A HREF="PostgreSQL-HOWTO.html#toc14">Indice</A> <HR> <H2><A NAME="Interfaccia di Perl al Database"></A> <A NAME="s14">14. Driver d'interfaccia ai database di Perl, per PostgreSQL (DBI) </A></H2> <P> <H2><A NAME="ss14.1">14.1 Interfaccia di Perl a PostgreSQL</A> </H2> <P>PERL è l'acronimo di 'Practical Extraction and Report Language'. Perl è disponibile su tutti i sistemi operativi, e per tutte le piattaforme hardware del mondo. Potete usare Perl su: Windows95/NT, Apple Macintosh iMac, tutte le versioni di Unix (Solaris, HPUX, AIX, Linux, Irix, SCO ecc..), mainframe MVS, desktop OS/2, OS/400, Amdahl UTS, e molti altri. Perl gira <B>ANCHE</B> su molti sistemi operativi e hardware poco diffusi, o generalmente sconosciuti!! Così non sorprendetevi se vedete perl girare su sistemi operativi usati molto raramente. Potete immaginare quanto estesa sia la base di utenti e di sviluppatori del Perl. Il linguaggio Perl ha, come il linguaggio "C", una vita molto lunga, e sarà usato per <B>migliaia di anni</B> nel futuro! Perl gira <B>10 volte</B> più rapidamente di Java, e qualche volta è più rapido anche del "C". Java è un sistema molto complesso; la sua macchina virtuale, e l'interprete, lo rendono estremamente lento, instabile ed inaffidabile. Perl è molto semplice, rapido, ed è orientato agli oggetti. <P>L'interfaccia di Perl a PostgreSQL è inclusa nella distribuzione di PostgreSQL. Cercate nella directory src/pgsql_perl5. <UL> <LI> Per Pgsql_perl5, contattate l'Email: <A HREF="mailto:E.Mergl@bawue.de">E.Mergl@bawue.de</A></LI> <LI> Home page di Perl: <A HREF="http://www.perl.com/perl/index.html">http://www.perl.com/perl/index.html</A></LI> <LI> Tutorial su Perl, cercate il link del Tutorial presso: <A HREF="http://reference.perl.com/">http://reference.perl.com/</A></LI> <LI> FAQ su Perl sono al sito: <A HREF="http://www.yahoo.com/Computers_and_Internet/Programming_Languages/Perl/">http://www.yahoo.com/Computers_and_Internet/Programming_Languages/Perl/</A></LI> <LI> Anzitutto procuratevi la Madre di tutti i Moduli Perl, presso il sito <A HREF="http://www.perl.com/CPAN/modules/by-module/CPAN">http://www.perl.com/CPAN/modules/by-module/CPAN</A> ; digitate '/usr/bin/cpan', 'man CPAN', e troverete migliaia di moduli <A HREF="http://www.perl.com/CPAN-local/modules/by-module">http://www.perl.com/CPAN-local/modules/by-module</A>.</LI> <LI> Rpm della GUI (Interfaccia Grafica) Perl-Qt: <A HREF="ftp://ftp.redhat.com/pub/contrib/i386">ftp://ftp.redhat.com/pub/contrib/i386</A> , e cercate PerlQt-1.06-1.i386.rpm</LI> <LI> Perl-Qt, GUI (Interfaccia grafica) Perl: <A HREF="http://www.accessone.com/~jql/perlqt.html">http://www.accessone.com/~jql/perlqt.html</A></LI> <LI> Perl-XForms, GUI (Interfaccia grafica) Perl: <A HREF="ftp://ftp.redhat.com/pub/contrib/i386">ftp://ftp.redhat.com/pub/contrib/i386</A>, e cercate Xforms4Perl-0.8.4-1.i386.rpm</LI> <LI> Perl-Tk GUI (Interfaccia grafica) Perl: <A HREF="ftp://ftp.redhat.com/pub/contrib/i386">ftp://ftp.redhat.com/pub/contrib/i386</A></LI> <LI> Kit per GUI di Perl: <A HREF="http://reference.perl.com/query.cgi?ui">http://reference.perl.com/query.cgi?ui</A></LI> <LI> Interfacce di Perl ai Database: <A HREF="http://reference.perl.com/query.cgi?database">http://reference.perl.com/query.cgi?database</A></LI> <LI> Traduttore da Perl a "C": <A HREF="http://www.perl.com/CPAN-local/modules/by-module/B/">http://www.perl.com/CPAN-local/modules/by-module/B/</A> , e cercate Compiler-a3.tar.gz</LI> <LI> Compilazione di Perl in un eseguibile. Perl2Exe è una utility a riga di comando per convertire script perl in file eseguibili <A HREF="http://www.indigostar.com/perl2exe.htm">http://www.indigostar.com/perl2exe.htm</A></LI> <LI> Traduttore da Bourne shell a Perl: <A HREF="http://www.perl.com/CPAN/authors/id/MERLYN/sh2perl-0.02.tar.gz">http://www.perl.com/CPAN/authors/id/MERLYN/sh2perl-0.02.tar.gz</A></LI> <LI> I traduttori da awk a Perl a2p, e da sed a Perl s2p, sono inclusi nella distribuzione di PERL.</LI> <LI> Cercate anche nei newsgroup comp.lang.perl.*, specifici per PERL.</LI> </UL> <H2><A NAME="ss14.2">14.2 Interfaccia DBI di Perl ai Database</A> </H2> <H3>COS'È DBI ?</H3> <P>DBI, l'Interfaccia di Perl ai Database, è una API (Application Programming Interface) d'accesso ai database per il linguaggio Perl. Le specifiche delle API DBI di Perl, definiscono un insieme coerente di funzioni, variabili e convenzioni, che forniscono un'interfaccia ai database indipendente dal database utilizzato. L'iniziativa dei Driver Database (Perl DBI) ha standardizzato l'interfaccia di numerosi motori database commerciali; cosicché potete, ad esempio, passare da Oracle a PostgreSQL con poca fatica. <H3>Driver DBI per PostgreSQL</H3> <P>Prima di installare DBD PostgreSQL (Driver), dovete installare DBI. Prelevate il driver DBI: <UL> <LI> Anzitutto procuratevi la Madre di tutti i Moduli Perl presso il sito: <A HREF="http://www.perl.com/CPAN/modules/by-module/CPAN">http://www.perl.com/CPAN/modules/by-module/CPAN</A> , e digitate '/usr/bin/cpan', 'man CPAN'; qui troverete migliaia di moduli <A HREF="http://www.perl.com/CPAN-local/modules/by-module">http://www.perl.com/CPAN-local/modules/by-module</A>.</LI> <LI> Moduli DBI <A HREF="http://www.perl.com/CPAN-local/modules/by-module/DBI">http://www.perl.com/CPAN-local/modules/by-module/DBI</A>.</LI> <LI> Moduli DBI <A HREF="http://www.symbolstone.org/technology/perl/DBI">http://www.symbolstone.org/technology/perl/DBI</A></LI> <LI> FAQ su DBI <A HREF="http://www.symbolstone.org/technology/perl/DBI/doc/faq.html">http://www.symbolstone.org/technology/perl/DBI/doc/faq.html</A></LI> <LI> Documentazione di riferimento per Perl DBI <A HREF="http://www.symbolstone.org/technology/perl/DBI">http://www.symbolstone.org/technology/perl/DBI</A></LI> <LI> Mailing List su DBI <A HREF="http://www.fugue.com/dbi">http://www.fugue.com/dbi</A></LI> <LI> Documentazione di riferimento per uso dei Database in Perl <A HREF="http://www.perl.com/reference/query.cgi?section=database">http://www.perl.com/reference/query.cgi?section=database</A></LI> <LI> Prelevamento di DBI in formato rpm (Attenzione: può essere una vecchia versione) <A HREF="http://rpmfind.net/linux/rpm2html/search.php?query=DBI">http://rpmfind.net/linux/rpm2html/search.php?query=DBI</A></LI> </UL> <P>Prelevate DBD-Pg come segue <UL> <LI> Anzitutto procuratevi la Madre di tutti i Moduli Perl, presso il sito <A HREF="http://www.perl.com/CPAN/modules/by-module/CPAN">http://www.perl.com/CPAN/modules/by-module/CPAN</A> , e digitate '/usr/bin/cpan', 'man CPAN'; qui troverete migliaia di moduli <A HREF="http://www.perl.com/CPAN-local/modules/by-module">http://www.perl.com/CPAN-local/modules/by-module</A>.</LI> <LI> Moduli DBD <A HREF="http://www.perl.com/CPAN-local/modules/by-module/DBD">http://www.perl.com/CPAN-local/modules/by-module/DBD</A>. e cercate i file DBD-pg, oppure <A HREF="http://www.perl.com/CPAN/modules/by-module/DBD">DBD</A>.</LI> <LI> CPAN, l'esauriente Archivio di rete dedicato a Perl <A HREF="http://www.perl.com/CPAN">http://www.perl.com/CPAN</A>. Giunti su questo sito, selezionate 'Database' (sulla casella di ricerca superiore), e fate click sul tasto 'Go'.</LI> <LI> Il pacchetto pre-compilato per Windows NT/2000, è disponibile in <A HREF="http://www.edmund-mergl.de/export/DBD-Pg.zip">http://www.edmund-mergl.de/export/DBD-Pg.zip</A>.</LI> <LI> Prelevamento di DBD in formato rpm (Attenzione: può essere una vecchia versione) <A HREF="http://rpmfind.net/linux/rpm2html/search.php?query=DBD">http://rpmfind.net/linux/rpm2html/search.php?query=DBD</A></LI> <LI> Moduli Perl (ce ne sono migliaia) <A HREF="http://www.perl.com/CPAN-local/modules/by-module">http://www.perl.com/CPAN-local/modules/by-module</A>.</LI> </UL> <P> <H3>Supporto tecnico per DBI</H3> <P> <UL> <LI> Inviate commenti e segnalazioni di bug, includendo l'output di perl -v e perl -V, la versione di PostgreSQL, la versione di DBD-Pg, e la versione di DBI nelle vostre segnalazioni. <A HREF="mailto:E.Mergl@bawue.de">E.Mergl@bawue.de</A></LI> </UL> <H3>Documenti sulla DBI</H3> <P>Ci sono alcune fonti di informazioni sulla DBI. <P><B>Documentazione POD: </B> I POD sono grandi raccolte di documentazione, solitamente incluse nei programmi perl; esse documentano il codice ``sul posto'', fornendo un'utile risorsa per i programmatori e gli utenti dei moduli. I POD, per DBI e driver, stanno diventando sempre più una consuetudine, e la documentazione per questi moduli può essere letta con i seguenti comandi: <P> <HR> <PRE> I POD per le specifiche DBI possono essere letti con il comando $ perldoc DBI Gli utenti dello strato di emulazione Oraper, incluso nel DBD::Oracle, possono leggere come programmare con l'interfaccia Oraperl, digitando: $ perldoc Oraperl Gli utenti del modulo DBD::mSQL possono leggere le descrizione di alcune delle funzioni riservate, e delle particolarità del driver, digitando: $ perldoc DBD::mSQL Le FAQ (Frequently Asked Questions) sono anche disponibili come documentazione POD. Leggetele digitando: $ perldoc DBI::FAQ POD in generale: Le informazioni su come scrivere POD, e sulla filosofia dei POD in generale, possono essere lette digitando: $ perldoc perlpod </PRE> <HR> Gli utenti, con il modulo Tk installato, possono essere interessati a sapere che è disponibile un lettore di POD, chiamato tkpod, basato su Tk; esso formatta i documenti POD in un modo da renderli facilmente leggibili. <P>Vedere anche: <UL> <LI> Informazioni dalla mailing list sulla DBI <A HREF="http://www.symbolstone.org/technology/perl/DBI/tidbits">http://www.symbolstone.org/technology/perl/DBI/tidbits</A></LI> <LI> Sito web del DBI Perl Journal <A HREF="http://www.tpj.com">http://www.tpj.com</A></LI> <LI> ``DBperl'', articolo pubblicato nella edizione di Novembre 1996 del ``Dr. Dobbs Journal''.</LI> <LI> ``The Perl5 Database Interface'', un libro scritto da Alligator Descartes e pubblicato da O'Reilly and Associates.</LI> </UL> <P>Le mailing list, cui gli utenti possono partecipare, sono: <UL> <LI> Mailing list <A HREF="http://www.fugue.com/dbi">http://www.fugue.com/dbi</A></LI> <LI> <B>dbi-announce</B> Email: <A HREF="mailto:dbi-announce-request@fugue.com">dbi-announce-request@fugue.com</A> , con 'subscribe' nel corpo del messaggio.</LI> <LI> <B>dbi-dev</B> Per sviluppatori: Email: <A HREF="mailto:dbi-dev-request@fugue.com">dbi-dev-request@fugue.com</A> , con 'subscribe' nel corpo del messaggio</LI> <LI> <B>dbi-users</B> discussioni generali Email: <A HREF="mailto:dbi-users-request@fugue.com">dbi-users-request@fugue.com</A> , con 'subscribe' nel corpo del messaggio</LI> <LI> Archivi della Mailing List USA <A HREF="http://outside.organic.com/mail-archives/dbi-users/">http://outside.organic.com/mail-archives/dbi-users/</A></LI> <LI> Archivi della Mailing List Europea <A HREF="http://www.rosat.mpe-garching.mpg.de/mailing-lists/PerlDB-Interest">http://www.rosat.mpe-garching.mpg.de/mailing-lists/PerlDB-Interest</A></LI> </UL> <H3>DBI è supportata sotto le piattaforme Windows 95 / NT ?</H3> <P>Ora, le versioni per Win32 della DBI, e di DBD::Oracle, sono una parte standard della DBI e quindi, scaricando una versione della DBI maggiore della 0.81, dovrebbero funzionare bene. Dalla DBI, attraverso ODBC, potete accedere ai database Microsoft Access e SQL-Server. Esiste uno 'strato di emulazione' per il modulo Win32::ODBC. È chiamato DBI::W32ODBC, ed è Fornito con DBI-0.79 (o più recente), Vi servirà il modulo Win32::ODBC. <UL> <LI> Win32 DBI <A HREF="http://www.symbolstone.org/technology/perl/DBI">http://www.symbolstone.org/technology/perl/DBI</A></LI> <LI> Win32 ODBC <A HREF="http://www.roth.net">http://www.roth.net</A></LI> <LI> Interfaccia Perl a Microsoft SQL server <A HREF="http://www.algonet.se/~sommar/mssql">http://www.algonet.se/~sommar/mssql</A></LI> </UL> <H3>Supporto Commerciale e Addestramento</H3> <P><B>PERL CLINIC: </B> Perl Clinic può stringere accordi di supporto commerciale per Perl, DBI, DBD::Oracle e Oraperl. Il supporto è fornito dalla compagnia in cui lavora Tim Bunce, autore della DBI. Per maggiori informazioni sui loro servizi, vedere: <UL> <LI> Assistenza <A HREF="http://www.perlclinic.com">http://www.perlclinic.com</A></LI> <LI> Assistenza <A HREF="http://www.perldirect.com">http://www.perldirect.com</A></LI> <LI> Addestramento <A HREF="http://www.westlake.com/training">http://www.westlake.com/training</A></LI> </UL> <H2><A NAME="ss14.3">14.3 Provare l'interfaccia al Perl</A> </H2> <P>Vedere la sezione: <A HREF="PostgreSQL-HOWTO-6.html#Provare Perl">Provare l'interfaccia di Perl a PostgreSQL</A><HR> <A HREF="PostgreSQL-HOWTO-15.html">Avanti</A> <A HREF="PostgreSQL-HOWTO-13.html">Indietro</A> <A HREF="PostgreSQL-HOWTO.html#toc14">Indice</A> </BODY> </HTML>