12 |
|
|
13 |
use SQLSession::Model::DatabaseCollection; |
use SQLSession::Model::DatabaseCollection; |
14 |
use DBI; |
use DBI; |
15 |
|
use Time::HiRes qw/time/; |
16 |
|
|
17 |
use Data::Dump qw/dump/; |
use Data::Dump qw/dump/; |
18 |
|
|
110 |
|
|
111 |
warn "SQL: $sql\n"; |
warn "SQL: $sql\n"; |
112 |
|
|
113 |
|
my $t = time(); |
114 |
|
|
115 |
my $sth = $dbh->prepare( $sql ) || |
my $sth = $dbh->prepare( $sql ) || |
116 |
$self->result->error( $dbh->errstr() ) && return 0; |
$self->result->error( $dbh->errstr() ) && return 0; |
117 |
|
|
118 |
$sth->execute() || |
$sth->execute() || |
119 |
$self->result->error( $sth->errstr() ) && return 0; |
$self->result->error( $sth->errstr() ) && return 0; |
120 |
|
|
121 |
$self->result->message('Query produced ' . ( |
$self->result->message('Query produced ' . ( |
122 |
$sth->rows == 0 ? 'no results' : |
$sth->rows == 0 ? 'no results' : |
123 |
$sth->rows == 1 ? 'single row' : |
$sth->rows == 1 ? 'single row' : |
124 |
$sth->rows . ' rows' |
sprintf("%d rows in %.2fs", $sth->rows, time() - $t) |
125 |
)) if ($sth->rows >= 0); |
)) if ($sth->rows >= 0); |
126 |
|
|
127 |
$self->result->content( sth => $sth ); |
$self->result->content( sth => $sth ); |