sql >> Databáze >  >> RDS >> Oracle

Vypuštění tabulky v Oracle SQL

Pokud jste si opravdu jisti, že chcete tabulku zrušit, i když na ni odkazují cizí klíče, můžete to vynutit takto:

drop table state cascade constraints;

Tato syntaxe je definována v příručce Oracle SQL Reference .

Všimněte si, že to zruší všechny vztahy cizího klíče. Budete je tedy muset znovu vytvořit poté, co jste přestavěli tabulku (a její primární klíč). Normálně je to v pořádku, protože nejběžnějším případem použití je vyhazování a opětovné vytváření schémat ve vývojových nebo CI prostředích.

Můžeme použít cascade constraints aby se naše skripty sestavení snadněji udržovaly. Existují dvě alternativy:

  1. Před zrušením tabulek explicitně zrušte omezení cizího klíče, a to buď pomocí skriptu, nebo pomocí dynamického SQL.
  2. Seřaďte příkazy DROPTABLE tak, aby byly nejprve přerušeny závislé tabulky spolu s jejich otravnými cizími klíči. Dost snadné pro hrstku tabulek, bolestivější s velkým schématem.


  1. Jaké jsou slabiny této metody ověřování uživatelů?

  2. Existuje rychlejší způsob, jak načíst mysqldumps?

  3. Jak INTERSECT data z tabulek na postgresu

  4. Příklady SQUARE() v SQL Server