Perl Language
Semplice interazione con il database tramite il modulo DBI
Ricerca…
Parametri
Colonna | Colonna |
---|---|
$driver | Driver per DB, "Pg" per Postgresql e "mysql" per MySQL |
$database | il nome del tuo database |
$userid | il tuo ID di database |
$password | la tua password del database |
$query | metti la tua domanda qui, es: "seleziona * da $ your_table" |
Modulo DBI
È necessario assicurarsi che il modulo DBI sia stato installato sul PC, quindi seguire i passaggi seguenti:
- usa il modulo DBI nel tuo script perl
use DBI;
- Dichiarare alcuni parametri primari
my $driver = "MyDriver";
my $database = "DB_name";
my $dsn = "DBI:$driver:dbname=$database";
my $userid = "your_user_ID";
my $password = "your_password";
my $tablename = "your_table";
- Collegati al tuo database
my $dbh = DBI->connect($dsn, $userid, $password);
- Prepara la tua richiesta
my $query = $dbh->prepare("Your DB query");
Ex:
$my_query = qq/SELECT * FROM table WHERE column1 = 2/;
my $query = $dbh->prepare($my_query);
Possiamo anche usare variabili nella query, come di seguito:
my $table_name = "table";
my $filter_value = 2;
$my_query = qq/SELECT * FROM $table_name WHERE column1 = $filter_value/;
- Esegui la tua query
$query->execute();
* Nota: per evitare un attacco di iniezione, dovresti usare i segnaposto ?
invece di inserire la variabile nella query.
Es: vuoi mostrare tutti i dati da 'tabella' dove colonna1 = $ valore1 e colonna2 = $ valore2:
my $query = $dbh->prepare("SELECT * FROM table WHERE column1 = ? AND column2 = ?;");
$query->execute($value1, $value2);
- Fletch i tuoi dati
my @row = $query->fetchrow_array();
memorizzare i dati come array
o
my $ref = $sth->fetchrow_hashref();
memorizzare i dati come riferimento hash
- Finisci e disconnetti il DB
$sth->finish;
$dbh->disconnect();