Как эффективно удалить все строки из таблицы в DB2
У меня есть таблица, которая имеет что-то вроде полумиллиона строк, и я хотел бы удалить все строки.
Если я сделаю простой delete from tbl
журнал транзакций заполняется. Меня не волнуют транзакции в этом случае, я не хочу отката в любом случае. Я мог бы удалить строки во многих транзакциях, но есть ли лучшие способы для этого?
Как эффективно удалить все строки из таблицы в DB2? Могу ли я каким-то образом отключить транзакции для этой команды или есть специальные команды чтобы сделать это (как усечь в MySQL)?
после удаления строк я снова заполню базу данных аналогичным количеством новых данных.
2 ответов
Кажется, что следующая команда работает в более новых версиях DB2.
TRUNCATE TABLE someschema.sometable IMMEDIATE
чтобы усечь таблицу в DB2, просто напишите:
alter table schema.table_name activate not logged initially with empty table
из того, что я смог прочитать, это удалит содержимое таблицы без какого-либо ведения журнала, который будет намного проще на вашем сервере ввода-вывода