I keep writing code to talk to databases in perl and I’m forever
forgetting the correct runes for talking to databases, so I thought I’d
stick it here for easy reference.
use DBI; my $db_driver = "Pg" # Pg or mysql (or others) my $db_name = "database"; my $db_host = "localhost"; my $db_user = "username"; my $db_pass = "password"; my $dbh = DBI->connect("dbi:$db_driver:dbname=$db_name;host=$db_host", $db_user, $db_pass);
It’s probably handy to give an example of a common database read
operation
my $sth = $dbh->prepare( "SELECT * FROM table WHERE id = ?") or die $dbh->errstr; $sth->execute($id) or die $dbh->errstr; while (my $hashref = $sth->fetchrow_hashref) { print $hashref->{id}; }