【发布时间】:2012-02-17 20:13:44
【问题描述】:
我有一个多对多表,其中存储了用户可以拥有的每个允许角色的记录。如果用户更新他的角色(添加和删除)角色,我应该如何处理?
我应该先删除所有用户角色,然后添加选定的角色吗?或者进行某种匹配?
【问题讨论】:
-
这就是我们有参数的原因,您将 userID 和 roleID 作为参数传递,然后执行:
DELETE FROM MyTable WHERE userID = @UserID AND roleID = @RoleID -
这实际上是一个比表面上看起来更好的问题。如果您的 UI 允许您编辑表格的多面并在用户点击保存时以批处理模式更新它(而不是一次执行一个),那么另一个用户可能会修改您下方的表格,这样您就可以'不确定,例如,当当前用户在 UI 中编辑时,另一个用户是否添加了角色