sql >> Databasteknik >  >> RDS >> Sqlserver

SQL DROP TABLE begränsning för främmande nyckel

Nej, detta kommer inte att tappa din tabell om det verkligen finns främmande nycklar som refererar till den.

För att få alla främmande nyckelrelationer som refererar till din tabell kan du använda denna SQL (om du använder SQL Server 2005 och senare):

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

och om det finns några, med den här satsen här, kan du skapa SQL-satser för att faktiskt ta bort dessa FK-relationer:

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. SQL-kloning och konvertering av en datumkolumn

  2. ansluta extern mysql-databas med php

  3. SQL-fråga för att hämta rader där ett värde finns i ett kommaseparerat fält

  4. Överträdelse av integritetsbegränsning:1452 laravel