March 14
Connessione al database MySQL da uno script Perl richiede il Perl DBI e DBD: moduli MySQL. Questi moduli possono essere ottenuti da CPAN (Comprehensive Perl Archive Network). Se si utilizza ActivePerl di ActiveState, è possibile scaricare i moduli con il Gestore Perl Package. Il modulo DBI viene utilizzato per l'accesso generale del database, mentre il DBD: modulo di MySQL è utilizzato per accedere al database MySQL.
Per utilizzare il DBI: modulo di MySQL per accedere al database MySQL, è necessario aggiungere la riga "use DBI;" allo script, che dice a Perl di utilizzare le librerie DBI. Questa linea deve essere posizionato prima di qualsiasi accesso al database è tentato. Si connette al database con il "DBI-> connect ( 'DBI: mysql: database', 'username', 'password')" la funzione. istruzioni SQL possono quindi essere preparati per l'esecuzione con la "funzione di preparare ()" ed eseguiti con la funzione di "eseguire". I risultati sono quindi ritrasmessi in un array che può essere stampato o ulteriormente elaborato.
Uno script di esempio sarà simile:
! / Usr / bin / perl -wCall biblioteca DBI
usare DBI;
Creare le variabili per le informazioni del database
$ Database = "example";
$ Username = "mysql";
$ Password = "pass";
Connettersi al database
$ Collegare = DBI-> connect ( 'DBI: mysql: $ database', $ username ', $ password')
o morire "Errore di connessione: $ DBI :: errstr \ n";
Fornire la query
$ Dichiarazione = "select * from indirizzo";
Eseguire la query
$ Eseguire = $ collega-> prepare ($ dichiarazione);
$ Execute-> execute
or die "Error: $DBI::errstr\n";
Restituire i risultati
while (@row = $ execute-> fetchrow_array) {
print "@row\n";}
$ Connect-> disconnect ();
La linea "$ collegare = DBI-> connect ( 'DBI: mysql: $ database', $ username ', $ password')
o morire "Errore di connessione: $ DBI :: errstr \ n"; "viene utilizzato per la connessione al database, ma fornisce anche il controllo degli errori in modo che lo script non continui a girare se nessuna connessione viene effettuata Il controllo degli errori è anche incluso. nell'esecuzione della query.
La funzione "fetchrow_array" restituisce ogni riga come un array di valori. I valori sono accessibili separatamente le variabili $ row [1], $ row [2], $ row [3], ecc In questo esempio, l'intera riga sarà stampato sullo schermo.
L'ultima riga dello script rimuove la connessione al database.
Se si desidera creare una tabella, o inserire dati in una tabella, è necessario utilizzare la funzione "do () Per creare la tabella la sintassi sarebbe.:
$ Connect-> do ( "Creare testo tabella (id INT, nome VARCHAR (20))");
Per inserire i dati nella tabella è necessario aggiungere la funzione di citazione (), al fine di citare i valori di stringa.
$ Connect-> do ( "Inserire in valori di testo (1," $ collega-> citazione ( "James")) "..);
Il modulo DBI permette alle funzioni di amministrazione del sistema quali la creazione, l'eliminazione e la chiusura del database.
Per creare un nuovo database si dovrebbe rilasciare la seguente riga:
$ Newdb = $ collega-> func ( "createdb", $ database, 'admin');
Per eliminare un database che si rilascia la riga:
$ Cancellare = $ collega-> func ( "dropdb", $ database, 'admin');
Per spegnere il database che si avrebbe emesso la riga:
$ Cancellare = $ collega-> func ( "shutdown", $ database, 'admin');