Este es un estándar de inserción de ejemplo de DBI Manual:Perl DBI: ¿cómo ver la consulta fallida con valores encuadernados?
my $query = q{
INSERT INTO sales (product_code, qty, price) VALUES (?, ?, ?)
};
my $sth = $dbh->prepare($query) or die $dbh->errstr;
while (<>) {
chomp;
my ($product_code, $qty, $price) = split /,/;
$sth->execute($product_code, $qty, $price) or die ($query . " " . $dbh->errstr);
}
$dbh->commit or die $dbh->errstr;
he modificado un poco, por lo que se puede ver en troquel que consulta falló (die ($query . " " . $dbh->errstr)
). Aún así, me gustaría ver la consulta con los valores límite (tal como se ejecutó). ¿Cómo conseguirlo?
Editar
Por cierto, he encontrado una manera incómoda para ver la consulta con los valores ligados también: usted tiene que hacer error de sintaxis en consulta. Por ejemplo, si cambio consulta anterior así:
my $query = q{
xINSERT INTO sales (product_code, qty, price) VALUES (?, ?, ?)
};
me devolvieron como quería:
DBD :: mysql :: st fallado ejecutar: Usted tiene un error en su sintaxis SQL ; revise el manual que corresponde a su versión del servidor MySQL para la sintaxis correcta para usar cerca de 'xINSERT INTO sample (product_code, qty, price) VALUES (' 1 ',' 2 ',' 3 ')' en la línea 1
A veces, realmente ayuda. Al menos me lo hizo a mí.
Gracias por señalar la buena dirección. Todavía me gustaría señalar mi adición en OP. –