MySQL Perl Tutorial

Koble til MySQL database fra en Perl-skript krever Perl DBI og DBD: MySQL moduler. Disse modulene kan fås fra CPAN (Comprehensive Perl Archive Network). Hvis du bruker Active er ActivePerl, kan du laste modulene med Perl Package Manager. DBI modul brukes til generell databasetilgang, mens DBD: MySQL modulen brukes til å få tilgang til MySQL database.

Tilkobling og spørring

Slik bruker DBI: MySQL-modulen for å få tilgang til MySQL-database, må du legge til linjen "bruker DBI;" til skriptet som forteller Perl å bruke DBI biblioteker. Denne linjen må plasseres før noen tilgang til databasen er forsøkt. Du kobler til databasen med "DBI-> koble ( 'dbi: mysql: database', 'brukernavn', 'passord')" -funksjon. SQL-setninger kan da være forberedt på kjøringen med "forberede () -funksjonen" og utført med "execute" -funksjon. Resultatene blir deretter matet inn i en matrise som kan skrives ut eller videre bearbeidet.

En eksempelskriptet vil se ut:

! / Usr / bin / perl -wCall DBI bibliotek

bruker DBI;

Opprette variabler for databasen informasjon

$ Database = "eksempel";
$ Username = "mysql";
$ Password = "pass";

Koble til databasen

$ Koble = DBI-> koble ( 'dbi: mysql: $ database', $ brukernavn ', $ passord')
eller dø "Tilkoblingsfeil: $ DBI :: errstr \ n";

Gi søket

$ Statement = "select * from adresse";

Utføre spørringen

$ Utføre = $ tilkoblet> forberede ($ statement);
$ Execute-> henrette

or die "Error: $DBI::errstr\n"; Returnerer resultatene

while (@row = $ execute-> fetchrow_array) {

print "@row\n";}

$ Tilkoblet> frakobling ();

Linjen "$ koble = DBI-> koble ( 'dbi: mysql: $ database', $ brukernavn ', $ passord')
eller dø "Tilkoblingsfeil: $ DBI :: errstr \ n"; "brukes for å koble til databasen, men det gir også feilkontroll slik at skriptet ikke fortsette å kjøre hvis det ikke blir opprettet forbindelse Feilkontroll er også inkludert. i utførelsen av spørringen.

Den "fetchrow_array" -funksjonen returnerer hver rad som en matrise av verdier. Verdiene kan åpnes separat med den variable $ p [1], $ rad [2], $ rad [3], etc. I dette eksempel er hele raden ville bli skrevet ut på skjermen.
Den siste linjen i skriptet fjerner databasetilkobling.

Hvis du ønsker å opprette en tabell, eller sette inn data i en tabell, bruker du "gjør () -funksjonen til å opprette tabellen syntaksen ville være.:
$ Tilkoblet> gjøre ( "Lag tabell tekst (id INT, Fornavn VARCHAR (20))");

For å sette inn data i tabellen, må du legge til sitatet () -funksjonen, for å sitere de strengverdier.
$ Tilkoblet> trenger ( "Sett inn tekst verdier (1," $ tilkoblet> sitat ( "James")) "..);

system~~POS=TRUNC

DBI modulen kan du systemadministrasjon funksjoner som å opprette, slette og stenge databasen.

For å opprette en ny database du vil gi til følgende linje:
$ Newdb = $ tilkoblet> funk ( «createdb», $ database, 'admin');

For å slette en database du vil utstede linjen:
$ Slett = $ tilkoblet> funk ( "dropdb", $ database, 'admin');

Til nedleggelse databasen du vil utstede linjen:
$ Slett = $ tilkoblet> funk ( "shutdown", $ database, 'admin');