学堂 学堂 学堂公众号手机端

sqlserver外键约束如何设置

lewis 3年前 (2022-09-04) 阅读数 5 #技术

在 SQL Server 中,可以通过以下方式设置外键约束:

  1. 在创建表时,使用 FOREIGN KEY 关键字指定外键约束。例如:

    CREATE TABLE Orders (
     OrderID int PRIMARY KEY,
     CustomerID int,
     OrderDate date,
     FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
    );
    
  2. 在已经存在的表上添加外键约束。例如:


    ALTER TABLE Orders
    ADD CONSTRAINT FK_CustomerID
    FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID);
    
  3. 可以指定外键约束的级联操作,例如当主键被删除时,外键如何处理。可以使用 ON DELETE 和 ON UPDATE 子句来指定级联操作。例如:

    ALTER TABLE Orders
    ADD CONSTRAINT FK_CustomerID
    FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
    ON DELETE CASCADE
    ON UPDATE CASCADE;
    
  4. 可以使用 WITH NOCHECK 子句创建外键约束,允许存在无效引用。例如:

    ALTER TABLE Orders
    WITH NOCHECK
    ADD CONSTRAINT FK_CustomerID
    FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID);
    

需要注意的是,在设置外键约束时,必须确保外键列和主键列的数据类型和长度相同,否则会导致设置失败。

版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门