有一张叫做人的桌子.有人格和接触.
如果一个人被删除,那么我希望从数据库以及该人的相关联系人中删除该人.
在ONE Store程序中执行DELETES或者我的业务层首先调用pContactDelete然后调用pPersonDelete是更好的做法???????
谢谢Niall
Car*_*lis 12
假设您正在使用MS SQL Server:
您应该使用ON DELETE CASCADE外键.
ALTER TABLE Contact
ADD CONSTRAINT FK_PersonContact FOREIGN KEY (PersonId)
REFERENCES Person(PersonId) ON DELETE CASCADE
Run Code Online (Sandbox Code Playgroud)
这将确保删除人员行时删除联系人行.它是一个总是由数据库强制执行的约束.
您也可以在SQL Management Studio的外键关系对话框,INSERT和UPDATE规则部分,删除规则 - >设置为Cascade中进行设置.
只需确保Contact在业务层中缓存对象的某个位置,您也可以刷新缓存.