如何在sql server中删除外键约束?

Amm*_*jad 65 database sql-server foreign-keys

我想从另一个表中删除外键,以便我可以插入我选择的值.

我是数据库的新手,所以请告诉我正确的sql查询删除或删除外键值.

Pra*_*nna 134

试试以下

ALTER TABLE <TABLE_NAME> DROP CONSTRAINT <FOREIGN_KEY_NAME>
Run Code Online (Sandbox Code Playgroud)

参考:http://www.w3schools.com/sql/sql_foreignkey.asp

  • @Nytux OP明确指出该平台是MS SQL Server,而不是PostgreSQL(标签和问题标题). (2认同)

Clo*_*ble 11

在引用引用完整性时这样做是错误的,因为一旦它破坏了它就不容易再次打开它而不必通过记录并删除那些破坏约束的记录.

无论如何语法如下:

ALTER TABLE Tablename DROP CONSTRAINT ContName;
Run Code Online (Sandbox Code Playgroud)

请参阅MSDN:


Sim*_*ang 6

ALTER TABLE [TableName] DROP CONSTRAINT [CONSTRAINT_NAME]
Run Code Online (Sandbox Code Playgroud)

但是,要小心,一旦你这样做了,你可能再也没有机会回来了,你应该阅读一些基本的数据库书籍,看看为什么我们需要外键


小智 5

要从数据库中删除所有约束,请执行以下操作:

SELECT 'ALTER TABLE ' + Table_Name  +' DROP CONSTRAINT ' + Constraint_Name
FROM Information_Schema.CONSTRAINT_TABLE_USAGE
Run Code Online (Sandbox Code Playgroud)