navicat команды truncate table и empty table - в чем разница?

Andrey_r62
Дата: 14.02.2013 15:22:46
Подскажите пожалуйста в чем разница выполнения в navicat команд truncate table и empty table.

Для truncate через командную строку можно сделать так:

mysql -u root -p******* -e "use `Test`;truncate`Table1`";,

а для empty table есть ли возможность выполнения из командной строки?
miksoft
Дата: 14.02.2013 15:38:09
Сильно подозреваю, что это DELETE FROM table1
Akina
Дата: 14.02.2013 16:00:38
MySQL не знает таких слов, как "empty table".
Andrey_r62
Дата: 14.02.2013 16:11:12
Akina
MySQL не знает таких слов, как "empty table".

MySql не знает, а в Navicat есть две команды Empty и Truncate.
Truncate пересоздаёт таблицу,
а Empty
miksoft
это DELETE FROM table1
я думаю также.
Если нет - поправьте.
romy4
Дата: 14.02.2013 16:15:00
Andrey_r62,

проверить элементарно. Если auto_increment стало =1, то значит truncate
Akina
Дата: 14.02.2013 16:38:31
Andrey_r62
Truncate пересоздаёт таблицу
Откуда такие сведения? потому как с точки зрения MySQL это как раз команда очистки содержимого таблицы без её пересоздания - операция гораздо более быстрая, чем delete from, которая выполняет (во всяком случае создаётся такое впечатление) удаление по одной записи.
Andrey_r62
Дата: 14.02.2013 18:08:20
Akina
Andrey_r62
Truncate пересоздаёт таблицу
Откуда такие сведения? ...

Отсюда
Синтаксис оператора TRUNCATE

TRUNCATE TABLE table_name
В версии 3.23 TRUNCATE TABLE выполняет последовательность "COMMIT ; DELETE FROM table_name". See Раздел 6.4.6, «Синтаксис оператора DELETE».
TRUNCATE TABLE имеет следующие отличия от DELETE FROM ...:
Эта операция удаляет и воссоздает таблицу, что намного быстрее, чем поочередное удаление строк.
Операция является нетранзакционной; если одновременно выполняется транзакция или активная блокировка таблицы, то можно получить ошибку.
Не возвращает количество удаленных строк.
Пока существует корректный файл table_name.frm, таблицу можно воссоздать с его с помощью, даже если файлы данных или индексов повреждены.
TRUNCATE является расширением Oracle SQL.
Akina
Дата: 14.02.2013 18:23:31
Andrey_r62
Дата: 14.02.2013 18:29:42
Akina, так что же делает Empty table в Navicat не подскажите?
Akina
Дата: 14.02.2013 18:42:34
Ну нет у меня гармошки навиката! почём я знаю, какого рожна он отправляет серверу? включи лог запросов да посмотри...