Author: spadkins
Date: Tue Jun 20 14:24:10 2006
New Revision: 6557
Modified:
p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm
Log:
move explain_sql up before the SQL is executed
Modified: p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm
==============================================================================
--- p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm (original)
+++ p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm Tue Jun 20 14:24:10 2006
@@ -391,6 +391,9 @@
print "DEBUG_SQL: _get_row()\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
while (1) {
eval {
$row = $dbh->selectrow_arrayref($sql);
@@ -421,9 +424,6 @@
}
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($row) if ($App::trace);
return($row);
@@ -457,6 +457,9 @@
print "DEBUG_SQL: _get_rows()\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
while (1) {
eval {
$rows = $self->_selectrange_arrayref($sql, $startrow, $endrow);
@@ -488,9 +491,6 @@
}
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($rows) if ($App::trace);
return($rows);
@@ -2120,15 +2120,15 @@
print "DEBUG_SQL: bind vars [", join("|",map { defined $_ ? $_ :
"undef" } @$row), "]\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
$retval = $dbh->do($sql, undef, @$row) if (defined $dbh);
if ($debug_sql && $debug_sql >= 2) {
$elapsed_time = $self->_read_timer($timer);
print "DEBUG_SQL: retval [$retval] ($elapsed_time sec) $DBI::errstr\n";
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($retval) if ($App::trace);
$retval;
@@ -2159,6 +2159,9 @@
print "DEBUG_SQL: bind vars [", join("|",map { defined $_ ? $_ :
"undef" } @$row), "]\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
$retval = $dbh->do($sql, undef, @$row);
if ($debug_sql) {
print "DEBUG_SQL: retval [$retval] $DBI::errstr\n";
@@ -2178,9 +2181,6 @@
$elapsed_time = $self->_read_timer($timer);
print "DEBUG_SQL: nrows [$nrows] ($elapsed_time sec)\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
$self->{sql} = $sql;
$self->{numrows} = $nrows;
&App::sub_exit($nrows) if ($App::trace);
@@ -2202,15 +2202,15 @@
print "DEBUG_SQL: _delete()\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
my $retval = $self->{dbh}->do($sql);
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
print "DEBUG_SQL: retval [$retval] ($elapsed_time sec) $DBI::errstr\n";
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($retval) if ($App::trace);
return($retval);
@@ -2236,6 +2236,9 @@
print "DEBUG_SQL: _update()\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
my $retval = $self->{dbh}->do($sql);
$retval = 0 if ($retval == 0);
if ($debug_sql) {
@@ -2243,9 +2246,6 @@
print "DEBUG_SQL: retval [$retval] ($elapsed_time sec) $DBI::errstr\n";
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($retval) if ($App::trace);
return($retval);
@@ -2269,15 +2269,15 @@
print "DEBUG_SQL: _delete_row()\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
$retval = $dbh->do($sql) if (defined $dbh);
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
print "DEBUG_SQL: retval [$retval] ($elapsed_time sec) $DBI::errstr\n";
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($retval) if ($App::trace);
$retval;
@@ -2301,15 +2301,15 @@
print "DEBUG_SQL: _delete_rows()\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
$retval = $dbh->do($sql) if (defined $dbh);
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
print "DEBUG_SQL: retval [$retval] ($elapsed_time sec) $DBI::errstr\n";
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($retval) if ($App::trace);
$retval;
@@ -2331,6 +2331,9 @@
print "DEBUG_SQL: _do()\n";
print $sql;
}
+ if ($context_options->{explain_sql}) {
+ $self->explain_sql($sql);
+ }
if (defined $dbh) {
if ($sql =~ /^select/i) {
$retval = $dbh->selectall_arrayref($sql);
@@ -2359,9 +2362,6 @@
}
print "\n";
}
- if ($context_options->{explain_sql}) {
- $self->explain_sql($sql);
- }
&App::sub_exit($retval) if ($App::trace);
$retval;
@@ -2369,7 +2369,7 @@
sub explain_sql {
my ($self, $sql) = @_;
- # to be overridden for each physical database
+ # to be overridden in each Repository class
}
sub _get_timer {