удалить весь запрос или удалить запрос - PullRequest
3 голосов
/ 13 сентября 2011

, что было более предпочтительным с точки зрения производительности и безошибочной причины, чтобы удалить всю строку из таблицы в sqlite в Android.

УДАЛИТЬ ЗАПРОС ИЛИ УДАЛИТЬ ТАБЛИЦУ И ПЕРЕГОВОРИТЬ ТАБЛИЦУ

Я нашел это из этой записи

it is more efficient to drop table and re-create it; and yes, You can use "IF EXISTS" in this case

DELETE FROM will cause SQLite to visit individual rows unless those rows have triggers, so it's generally reasonably efficient.


edited after 1 answer post

As the Droping the table using drop table query then internally delete query was used? As in one answer post

Ответы [ 2 ]

3 голосов
/ 20 сентября 2011

По запросу sqlite я нашел ответ. В sqlite они использовали Оптимизацию усечения, поэтому, когда предложение «where» было опущено, они удаляют таблицу и воссоздают таблицу, это намного быстрее, чем удаляются все строки.

вот ссылки для этого

http://www.sqlite.org/lang_delete.html

http://www.sqlite.org/compile.html#omit_truncate_optimization

0 голосов
/ 13 сентября 2011

Насколько мне известно, DELETE QUERY - лучший вариант, потому что таблица удаления внутренне использует запрос на удаление.Если вы используете запрос на удаление, вам нужно заново создать таблицу. Это еще один дополнительный процесс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...