Tengo una consulta que reside en múltiples métodos cada uno (consulta) de los cuales puede contener múltiples parámetros. Estoy tratando de reducir el tamaño del archivo y el recuento de líneas para que sea más fácil de mantener. A continuación se muestra tal ocurrencia:¿Cómo hago que las múltiples consultas de bases de datos sean más eficientes en Perl?
$sql_update = qq { UPDATE database.table
SET column = 'UPDATE!'
WHERE id = ?
};
$sth_update = $dbh->prepare($sql_update);
if ($dbh->err) {
my $error = "Could not prepare statement. Error: ". $dbh->errstr ." Exiting at line " . __LINE__;
print "$error\n";
die;
}
$sth_rnupdate->execute($parameter);
if ($dbh->err) {
my $error = "Could not execute statement. Error: ". $dbh->errstr ." Exiting at line " . __LINE__;
print "$error\n";
die;
}
Este es sólo un ejemplo, sin embargo, hay varios otros ejemplos selectos que contienen sólo el parámetro a ser aprobada en, sin embargo también hay algo con dos o más parámetros. Supongo que me pregunto si sería posible encapsular todo esto en una función/método, pasar una matriz de parámetros, ¿cómo se llenarían los parámetros en la función execute()?
Si esto fuera posible, podría escribir un método que simplemente pasa en la consulta SQL y los parámetros y obtener una referencia a los registros recuperados. ¿Esto suena seguro en absoluto?
Esto suena muy beneficioso. ¿El módulo Class :: DBI viene con core perl? (para Unix) –
No. Tendrá que instalarlo. Al escribir "install Class :: DBI" y responder con una 'y' a todas las dependencias dentro de un shell CPAN se lo instalará. –