将两个外键的级联删除到单个主键

时间:2012-10-13 04:02:06

标签: sql sql-server foreign-keys primary-key

在我目前的项目中,我正在创建一个非常简单的1对1消息传递服务。我有两个表,usersmessagesmessages表的当前结构如下:

id  | from | to    | message    | sent     | received
int | int  | int   | string     | datetime | datetime

fromto字段都是users主键(id)的外键。这似乎工作正常,但我不能让他们都使用级联删除。我收到这个错误:

Introducing FOREIGN KEY constraint 'FK_messages_users_to' on table
'messages' may cause cycles or multiple cascade paths. Specify ON 
DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Could not create constraint. See previous errors.

可以这样做吗?我不明白为什么它不起作用。如果用户已被删除,我想删除整个会话,以便在fromto字段中包含用户ID的所有行。

0 个答案:

没有答案