创建一个表的SQL Server

问题描述:

我创造用户表这样的两个外键:创建一个表的SQL Server

CREATE TABLE TblUser 
(
    UserId int identity primary key, 
    Name varchar(20) 
) 

,创造一个更表

CREATE TABLE TblAnnouncements 
(
    Id int identity primary key, 
    Announcements varchar(20), 
    CreatedBy INT 
     FOREIGN KEY REFERENCES TblUser (USERID) 
      ON DELETE CASCADE, 
    UpdatedBy INT 
     FOREIGN KEY REFERENCES TblUser (USERID) 
      ON DELETE SET NULL 
) 

我收到此错误

Msg 1785,Level 16,State 0,Line 1
在表'TblAnno引入FOREIGN KEY约束'FK__TblAnnoun__Updat__60A75C0F' uncements'可能会导致循环或多个级联路径。指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或修改其他FOREIGN KEY约束。

如何在表中维护createdbyupdatedby

你可以建议任何其他方式来做到这一点吗?

谢谢

+0

您应该*总是*给你外键约束**显式名称**所以你不必处理'FK__TblAnnoun__Updat__60A75C0F' .... –

尝试创建平原表后创建FK约束。即ALTER TABLE ADD约束语法