用户表:用户id,用户名,角色,权限
权限表:权限id,角色
  说明:用户属于角色,角色拥有不同权限。
在用户表插入 用户名 和 角色 后,权限 字段根据权限表里面的权限所属的角色将相应的 角色 自动插入数据库。恳请各位大侠出手相助,小弟万分感激!

解决方案 »

  1.   

    你的权限数据库完全不合理   用户表:用户id,用户名,角色,权限
                               权限表:权限id,角色应该是角色来对应权限,然后再给用户赋予一个角色
    ----------------------------------------------------------
                          改: 用户表:用户id,用户名,角色(外键)
                               权限表:角色(nvarchar)主键,权限
      

  2.   

    给用户表写一个触发器
    按你后来的意思是通过匹配权限给用户表添加角色是吧(如果不是你只要改下字段就是了)
    CREATE TRIGGER trg
       ON  用户表
       AFTER INSERT
    AS 
    BEGIN
        SET NOCOUNT ON;
        declare @quanxian nvarchar(50) ,@juese nvarchar(50)  --定义变量
    if exists(select 1 from inserted)   --如果是插入操作
    begin
       set @quanxian=(select 权限 from inserted)  --获取插入记录的权限
       set @juese = (select 角色 from 权限表 where 权限名称=@quanxian) --获取权限表中的角色名称
       update 用户表 set 角色=@juese where 权限=@quanxian    --更新刚才插入的记录
    end
    大概过程就是这样  字段由你自己决定
    如果你是按原来的思路想匹配
    角色来插入权限 只要改换字段就行