Oracle
 sql >> база данни >  >> RDS >> Oracle

Изтриване на таблица в Oracle SQL

Ако наистина сте сигурни, че искате да премахнете таблицата, въпреки че е посочена във външни ключове, можете да я принудите по следния начин:

drop table state cascade constraints;

Този синтаксис е дефиниран в Oracle SQL Reference .

Обърнете внимание, че това премахва всякакви връзки с външни ключове. Така че ще трябва да ги създадете отново, след като сте изградили отново таблицата (и нейния първичен ключ). Обикновено това е добре, защото най-честият случай на употреба е изхвърляне и повторно създаване на схеми в среда за разработка или CI.

Можем да използваме cascade constraints за да направим нашите скриптове за изграждане по-лесни за поддръжка. Има две алтернативи:

  1. Изрично премахнете ограниченията на външния ключ, преди да премахнете таблиците, или със скрипт, или с динамичен SQL.
  2. Поръчайте изразите DROPTABLE така, че зависимите таблици да бъдат затворени първи, заедно с техните досадни външни ключове. Достатъчно лесно за шепа таблици, по-болезнено с голяма схема.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PL/SQL на SquirreL SQL клиент 3.7.1

  2. oracle как да транспонира колони в редове без UNION

  3. ORACLE Изберете Distinct връща много колони и къде

  4. Hibernate не генерира идентификатор, когато използва последователност на Oracle

  5. Преобразувайте keep dense_rank от Oracle заявка в postgres