我在SQL Server中有两个表,一个名为Users
,另一个名为Connections
,连接只是用户和另一个用户之间的连接,所以我的表是这样的:SQL Server 2008:无法为同一父表创建两个外键
CREATE TABLE Users(
UserUID int IDENTITY NOT NULL,
UserUN NVARCHAR(100) NOT NULL,
UserPassword NVARCHAR(100) NOT NULL,
PRIMARY KEY(UserUID)
)
CREATE TABLE Connections(
_CID int IDENTITY NOT NULL,
_UID1 int not null,
_UID2 int not null,
_ConDate datetime null DEFAULT GETDATE(),
PRIMARY KEY(_CID),
FOREIGN KEY(_UID1) REFERENCES Users(UserUID) ON DELETE CASCADE,
FOREIGN KEY(_UID2) REFERENCES Users(UserUID) ON DELETE CASCADE
)
但每次我运行查询时,它抛出错误:
Introducing FOREIGN KEY constraint 'FK_Connectio__UID2__69B1A35C' on table 'Connections' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
我试着在谷歌搜索,我发现说我应该做一个触发的答案,但我不不知道那是什么。我希望我能找到一些答案并且非常感谢。
你考虑呢?指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或者修改其他FOREIGN KEY约束。“这对你有用吗? – usr