Hallo,
gibt es eine Möglichkeit die Zeit, die der MySQL-Server gebraucht hat die jeweilige Anfrage zu verarbeiten, per DBI (als Handle-Attribut?) zu erhalten?
Mir ist keine bekannt. Aber Du kannst ja die Funktion time bzw. (falls Du es genauer brauchst) die Module Benchmark und Time::HiRes benutzen um die Zeiten zu ermitteln.
<sample>
use Time::HiRes qw( gettimeofday tv_interval );
some other Code here
my ($starttime,$preparetime,$executetime,$finishtime);
$starttime = [gettimeofday];
$sth = $dbh->prepare($sqlstatement);
$preparetime = tv_interval ( $starttime, [gettimeofday]);
$sth->execute();
$executetime = tv_interval ( $starttime, [gettimeofday]);
fetching and processing the data
$sth->finish;
$finishtime = tv_interval ( $starttime, [gettimeofday]);
print <<EOF
Ausführung brauchte :
Prepare: $preparetime
Execute: $executetime
Gesamt : $finishtime
EOT
;
</sample>
Grüße
Klaus