MySQL Perl Tutorial

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.

Collegamento e Interrogazione

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")) "..);

Amministrazione di sistema

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');