sql >> Databasteknik >  >> RDS >> Database

Hur man tar bort en främmande nyckelbegränsning i SQL

Problem:

Du vill ta bort en främmande nyckel från en tabell i en databas.

Exempel:

Vi vill ta bort den främmande nyckeln som heter fk_student_city_id från tabellen student .

Lösning 1 (ny tabell):

ALTER TABLE student
DROP CONSTRAINT fk_student_city_id;

Diskussion:

För att ta bort en främmande nyckel från en tabell, använd ALTER TABLE sats med namnet på tabellen (i vårt exempel, student ) följt av satsen DROP CONSTRAINT med namnet på den främmande nyckelbegränsningen. I vårt exempel är namnet på denna begränsning fk_student_city_id .

Om begränsningen för den främmande nyckeln genererades av databasen, kan du hitta detta namn i databasen. Varje databasserver har dock olika sätt att namnge begränsningar. I SQL Server kan du kontrollera det genom att välja data från sys.key_constraints i den givna databasen. I PostgreSQL väljer du conname kolumnen från pg_constraint tabell. Oracle lagrar denna data i tabellen user_constraints, och MySQL låter dig hämta namn från CONSTRAINT_NAME kolumn i information_schema.TABLE_CONSTRAINTS .


  1. Native Library sqljdbc_auth.dll har redan laddats i en annan klassladdare

  2. Hur jag skapar installationsprogram för webbplatsen. PHP mysql

  3. SQL Server Oanvänd Index

  4. SQL Server 2012 Service Pack 1 och kumulativ uppdatering 1