#!/usr/bin/perl use strict; use warnings; use Cwd; use DBI; my ($dsn, $dbh, $sth); my %proyeccionPIB; my $curDir = cwd(); my $dbName = $curDir . "/cargasInterurbanas.mdb"; $dsn = "dbi:ODBC:" . "DRIVER={Microsoft Access Driver (*.mdb)};" . "DBQ=" . $dbName . ";" . "PWD=;" ; $dbh = DBI-> connect($dsn, undef, undef, {PrintError => 1, RaiseError =>1}) or die "Can't open database ($DBI::errstr)"; $dbh->{RaiseError} = 1; my $sql = "SELECT Ano, crecimientoPIB FROM PIB;"; $sth = $dbh->prepare ($sql); $sth->execute (); print "ProyeccionPIB\n"; while (my @row = $sth->fetchrow_array) { $proyeccionPIB{$row[0]} = $row[1]; printf ("\t%s\t%5.3f\n", $row[0], $proyeccionPIB{$row[0]}); } $sql = "UPDATE PIB SET crecimientoPIB = 0.045 WHERE Ano = 2013"; $sth = $dbh->prepare ($sql) or die->errstr;; $sth->execute (); DBI::dump_results($sth);