SQL Server:无法删除表

时间:2015-11-23 04:06:19

标签: sql sql-server database foreign-keys drop-table

我尝试删除作业的所有外键和主键,但到目前为止我收到以下错误:

  

Msg 3728,Level 16,State 1,Line 3
  'fk_DEPENDENT_ESSN'不是约束。

     

Msg 3727,Level 16,State 0,Line 3
  无法删除约束。查看以前的错误。

以下是我的命令:

Use Company;
Go

--Dropping FKs from Dependent Table
ALTER TABLE Dependent
DROP fk_DEPENDENT_ESSN

--Dropping FKs from Dept_Locations Table
ALTER TABLE Dept_Locations
DROP fk__DEPT_LOCATIONS__Dnumber

--Dropping FKs from Employee Table
ALTER TABLE Employee
DROP FK__Employee__Dno

ALTER TABLE Employee
DROP FK__Employee__Super___ssn

--Dropping FKs from Project Table
ALTER TABLE Project
DROP FK__Project

--Dropping FKs from WORKS_ON Table
ALTER TABLE WORKS_ON
DROP FK__WORKS_ON__Essn

ALTER TABLE WORKS_ON
DROP FK__WORKS_ON__PNO

我应该如何解决此问题,抱歉我无法在此处发布我的数据库。如果您有任何问题,请随时发表评论或发送电子邮件。

由于

1 个答案:

答案 0 :(得分:0)

错误是因为fk_DEPENDENT_ESSN不存在。你错过了吗?应该是fk__DEPENDENT_ESSN

您可以使用sysobjects表格查看FK的名称。

SELECT * FROM sysobjects WHERE name LIKE '%DEPENDENT_ESSN'

请参阅SQL Server 2008 cannot drop constraint