IF OBJECT_ID(N'[dbo].[FK_ClassStudent]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[T_Student] DROP CONSTRAINT [FK_ClassStudent];
GO
IF OBJECT_ID(N'[dbo].[FK_ClassTeacher]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[T_Teacher] DROP CONSTRAINT [FK_ClassTeacher];
GO这两句什么意思???怎样判断的,删除了什么约束???

解决方案 »

  1.   

    看字面意思是删除表的外键约束,
    OBJECT_ID(‘对象名称’)是系统函数,返回系统sysobjects中的对象id,
    对象可以是表,视图,函数,存储过程,索引,约束等等object!
      

  2.   


    IF OBJECT_ID(N'[dbo].[FK_ClassStudent]', 'F') IS NOT NULL
      ALTER TABLE [dbo].[T_Student] DROP CONSTRAINT [FK_ClassStudent];
    GO
    如果...不为空,删除...
    下同
    ‘引号里的’内容可以是表明,函数名,触发器,约束等
    IF OBJECT_ID(N'[dbo].[FK_ClassTeacher]', 'F') IS NOT NULL
      ALTER TABLE [dbo].[T_Teacher] DROP CONSTRAINT [FK_ClassTeacher];
    GO