Разница между удалением и удалением в Oracle

Я использую Oracle Database, и я немного запутался в командах Drop and Purge. На самом деле для меня оба делают то же самое. Удаляет таблицу со схемой из базы данных. В чем основное отличие этих двух?

  • Табличное имя таблицы табуляции;
  • Удалить таблицу заголовков таблиц

Ответы

Ответ 1

Как правило, таблица перемещается в корзину (с Oracle 10g), если она отбрасывается. Однако, если также указан модификатор продувки, таблица полностью восстанавливается (полностью) из базы данных.

Ответ 2

Oracle Database 10g представляет новую функцию для удаления таблиц. Когда ты отбросить таблицу, база данных не сразу освободит пространство, связанное с Таблица. Скорее, база данных переименовывает таблицу и помещает ее в корзину, где она может позже будет восстановлен с помощью инструкции FLASHBACK TABLE, если вы обнаружите, что вы упал стол по ошибке. Если вы хотите немедленно освободить пространство, связанное с таблицей в то время вы выдаете инструкцию DROP TABLE, а затем включаете предложение PURGE следующим образом. DROP TABLE сотрудники PURGE; Укажите PURGE только в том случае, если вы хотите удалить таблицу и освободить место связанных с ним за один шаг. Если вы укажете PURGE, тогда база данных не будет поместите таблицу и ее зависимые объекты в корзину. ПРИМЕЧАНИЕ. Вы не можете отменить оператор DROP TABLE с помощью PURGE , и вы не сможете восстановить таблицу, если вы отбросите ее с помощью предложения PURGE. Эта функция не была доступна в более ранних версиях.

Ответ 3

Ссылка на статью аскета: http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:32543538041420

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

Ответ 4

SQL>drop table table_name;

Эта команда удаляет таблицу с именем table_name, но внутренне она перемещается в корзину bin oracle (что похоже на удаление любого файла/папки с помощью клавиши Delete на окнах os).
Преимущества:
1. При необходимости мы сможем восстановить вышеуказанную удаленную таблицу.
Недостатками:
1. По-прежнему занимает некоторое количество памяти.

SQL>drop table table_name purge;

Эта команда полностью удаляет таблицу table_name из базы данных (которая похожа на удаление любого файла/папки с помощью клавиши Shift + Delete в ОС Windows).

Преимущества и недостатки будут процитировать выше.

Ответ 5

Нижеприведенный оператор отбрасывает таблицу и помещает ее в корзину.

DROP TABLE emp_new;

Нижеприведенный оператор отменит таблицу и вытолкнет ее из корзины.

DROP TABLE emp_new PURGE;

Ответ 6

Это ясно из комментария @Randy, просто чтобы добавить:

(1) Название таблицы удаления таблицы:

Без purge таблица может быть в RECYCLEBIN или USER_RECYCLEBIN; который можно восстановить с помощью команды FLASHBACK. Это похоже на файлы, которые мы удаляем на рабочем столе Windows, которые перемещаются в корзину и могут быть восстановлены обратно.

(2) Удаление таблицы Удаление имени таблицы:

Если Drop дается вместе с Purge, его табличное пространство освобождается и не может быть восстановлено. (Как Shift + Delete на рабочем столе)

Следующий пример дает практический пример:

create table test_client (val_cli integer, status varchar2(10));
drop table test_client ;

select tablespace_name from all_tables where owner = 'test' and table_name = 'TEST_CLIENT';

SELECT * FROM RECYCLEBIN where ORIGINAL_NAME='TEST_CLIENT';

SELECT * FROM USER_RECYCLEBIN where ORIGINAL_NAME='TEST_CLIENT';

FLASHBACK TABLE test_client  TO BEFORE DROP;

select tablespace_name from all_tables where owner = 'test' and table_name = 'TEST_CLIENT';

drop table test_client purge;

select tablespace_name from all_tables where owner = 'test' and table_name = 'TEST_CLIENT';

Ответ 7

удалить таблицу table_name,

Используя этот запрос, что произошло: - Как правило, таблица перемещается в корзину (по сравнению с Oracle 10g), если она отбрасывается. Но все еще занята памятью в базе данных, поэтому для освобождения памяти для другого объекта мы можем использовать предложение Purge.