LINUX.ORG.RU

Ответ на: комментарий от savnn

Ну... Может тем, что они удаляют РАЗНЫЕ данные? Как бы таблица и строки в таблице несколько отличаются. А то, если так рассуждать, какой-нибудь DROP DATABASE всех зарулит. Тоже, блин, данные удаляет...

Ximen ★★★★
()
Ответ на: комментарий от Ximen

я, наверно, неточно выразился. надо удалить все данные из одной таблицы.

то есть рассматриваются варианты

drop table tablename;
delete from tablename; create table tablename ...

savnn
() автор топика
Ответ на: комментарий от Ximen

где здесь кнопка «поблагодарить»? :-)

savnn
() автор топика
Ответ на: комментарий от ef37

Это знаете ли философия.

DDL включает в себя работу с данными. Они могут удалиться (удаление таблицы) или добавиться (добавление столбца в таблицу с заполнением его по умолчанию).
DML, внося данные в таблицы, меняет их логическую структуру, определяя таким образом новые структуры данных на прежних таблицах.

Вопрос был про удаление данных, поэтому и DML и DDL решают в данном случае задачу работы с данными и являются одним и тем же.

anonymous
()
Ответ на: комментарий от Ximen

>А то, если так рассуждать, какой-нибудь DROP DATABASE всех зарулит.

Всех зарулит удаление файла с базой на диске.

anonymous
()
Ответ на: комментарий от anonymous

Всех зарулит удаление файла с базой на диске.

Это вряд ли. SQL быстрее. Плюс прав может не хватить. :)

Ximen ★★★★
()
Ответ на: комментарий от naryl

Всех зарулит применение молотка к HDD.

Опасно для здоровья. Владелец машины может и в ответ подобное сотворить :)

Ximen ★★★★
()
Ответ на: комментарий от anonymous

>Вопрос был про удаление данных, поэтому и DML и DDL решают в данном случае задачу работы с данными и являются одним и тем же.

Сразу видно, анонимный философ никогда не участвовал в разработке крупных систем с тысячами таблиц.

DROP TABLE потянет за собой гибель indexes, constraints, triggers, etc ...

Потом, когда ты, чудо-разрабочик, сподобишься восстановить таблицу после такого экстремального очищения, в твою голову ведь ни за что не придут ведь мысли о том, что, например, индексы надо создавать с теми же именами что и были, а не с авто-генерированными (потому что в сотне-другой запросов они используются в директивах оптимизатору, сюрприз). И много подобных вещей, с которыми ты еще видимо не сталкивался.

ef37 ★★
()
Ответ на: комментарий от anonymous

Вопрос был про удаление данных, поэтому и DML и DDL решают в данном случае задачу работы с данными и являются одним и тем же.

В MySQL для DML поддерживаются транзакции, для DDL - нет. Так что равноценность в данном случае отнюдь не очевидна.

bibi
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.