2014-09-01 2 views
0

Как мне выполнить команду EXPLAIN QUERY PLAN для sqlite, чтобы получить результаты и показать их на экране с помощью php? Я использую простой Sqlite3 php класс http://nl1.php.net/manual/en/class.sqlite3.php, но query() возвращение SQLite3Result объект, а не сырая дампа.sqlite получить EXPLAIN QUERY PLAN результат с помощью php

$result = $db->query("EXPLAIN QUERY PLAN SELECT * from events WHERE type='comment' AND TIMESTAMP > $time AND PAGE = '$page' LIMIT 1"); 
echo $result; 

ответ

1

EXPLAIN QUERY PLAN ведет себя как запрос, который выводит четыре столбца таблицы:

sqlite> .mode columns 
sqlite> .header on 
sqlite> EXPLAIN QUERY PLAN SELECT 1 UNION SELECT 2 GROUP BY 1 ORDER BY 1; 
selectid order  from  detail      
---------- ---------- ---------- ---------------------------- 
2   0   0   USE TEMP B-TREE FOR ORDER BY 
0   0   0   COMPOUND SUBQUERIES 1 AND 2 

Вы должны выводить его как запрос, то есть петли над рядами, и выводить значение в каждом столбце ,

Вместо этого вы можете использовать командную строку sqlite3.

Смежные вопросы