我有3个表tblpermission
,tblgroup
,tblassigngrouppermission
。然后我有一个设计有两个组合框用于选择组和权限。选择后,我将其添加到列表视图。然后我保存它,那时它将转到表tblassigngrouppermission
。
该表格包含assign id
(默认增量),groupid
,permission id
等列。所有都正确添加到表中。保存后,如果我选择相同的组进行分配权限。然后我选择已经分配的权限,然后单击保存添加到表中。但是我需要在那里没有添加已经分配的权限。
我该怎么做?
答案 0 :(得分:0)
当您将数据保存回tblassigngrouppermission
时,您必须检查表格中是否存在group_id
和permission_id
。
如果他们在场,您必须更新tblassigngrouppermission
否则您必须在tblassigngrouppermission
中插入
答案 1 :(得分:0)
如果您使用存储过程,则可以执行此操作
IF NOT EXISTS(Select permissionId From tblassigngrouppermission
Where groupId=@GroupID AND permissionId=@permissionId)
Begin
INSERT INTO tblassigngrouppermission(groupId,permissionId) Values(@groupId, @PermissionID)
End
您也可以从代码中查看
==>编写一个测试权限是否已存在的函数
bool GroupPermissionExists(int groupId, int permissionId)
{
//Select Where GroupId=groupId AND PermissionID=permissionId
}
if(!GroupPermissionExists(10, 123))
{
AddPermissionToGroup(10, 123);
}