1
0
mirror of https://github.com/dg/dibi.git synced 2025-02-23 10:26:21 +01:00

DibiNettePanel: Oracle explains using EXPLAIN PLAN

This commit is contained in:
David Grudl 2012-01-21 16:54:19 +01:00
parent 70fd2368aa
commit bf49cec002

View File

@ -123,7 +123,7 @@ class DibiNettePanel extends DibiObject implements IBarPanel
try {
$backup = array($event->connection->onEvent, dibi::$numOfQueries, dibi::$totalTime);
$event->connection->onEvent = NULL;
$cmd = is_string($this->explain) ? $this->explain : 'EXPLAIN';
$cmd = is_string($this->explain) ? $this->explain : ($event->connection->getConfig('driver') === 'oracle' ? 'EXPLAIN PLAN' : 'EXPLAIN');
$explain = dibi::dump($event->connection->nativeQuery("$cmd $event->sql"), TRUE);
} catch (DibiException $e) {}
list($event->connection->onEvent, dibi::$numOfQueries, dibi::$totalTime) = $backup;