sql >> Databáze >  >> RDS >> Sqlserver

SQL DROP TABLE omezení cizího klíče

Ne, toto nezruší vaši tabulku, pokud na ni skutečně odkazují cizí klíče.

Chcete-li získat všechny vztahy cizích klíčů odkazující na vaši tabulku, můžete použít tento SQL (pokud používáte SQL Server 2005 a vyšší):

SELECT * 
FROM sys.foreign_keys
WHERE referenced_object_id = object_id('Student')

a pokud nějaké existují, pomocí tohoto příkazu zde můžete vytvořit příkazy SQL, které skutečně zruší tyto vztahy FK:

SELECT 
    'ALTER TABLE [' +  OBJECT_SCHEMA_NAME(parent_object_id) +
    '].[' + OBJECT_NAME(parent_object_id) + 
    '] DROP CONSTRAINT [' + name + ']'
FROM sys.foreign_keys
WHERE referenced_object_id = object_id('Student')


  1. Instalace Oracle Developer Tools 12 se nezdařila s tvrzením, že mám Windows XP. Mám Windows 7

  2. 7 klíčových věcí k zapamatování o globalizaci datových modelů

  3. Počítejte odlišné hodnoty pro každý sloupec jednotlivě

  4. Odstranění událostí z protokolu pošty databáze SQL Server (T-SQL)