2007-12-24
用户,角色,功能三者之间的关系视图
假设有如下数据库结构:
create table userinfo(id varchar(20),name varchar(20));
create table roleinfo(id varchar(20),name varchar(20));
create table functioninfo(id varchar(20),name varchar(20));

create table userrole(userid varchar(20),roleid varchar(20));
create table rolefunction(roleid varchar(20),functionid varchar(20));

insert into userinfo values("1","gao1");
insert into userinfo values("2","gao2");
insert into userinfo values("3","gao3");
insert into roleinfo values("1","role1");
insert into roleinfo values("2","role2");
insert into roleinfo values("3","role3");

insert into functioninfo values("1","function1");
insert into functioninfo values("2","function2");
insert into functioninfo values("3","function3");

insert into userrole values("1","1");
insert into userrole values("1","2");
insert into userrole values("2","2");
insert into userrole values("3","1");
insert into userrole values("3","2");
insert into userrole values("3","3");
insert into role function values("1","1");
insert into role function values("1","2");
insert into role function values("2","2");
insert into role function values("3","1");
insert into role function values("3","2");
insert into role function values("3","3");
我们可以根据三者连接的结果建立视图,得出整个权限模型的数据
select u.name as username,r.name as rolename,f.name as functionname
from userrole ur inner join userinfo u on ur.userid=u.id
inner join roleinfo r on ur.roleid=r.id
inner join rolefunction rf on rf.roleid=r.id
inner join functioninfo f on rf.functionid=f.id
order by u.name;结果:

发表评论
- 浏览: 84449 次
- 性别:

- 来自: 北京

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
Static初始化代码快访问st ...
当然啦,final型常量只能被赋值一次
-- by Chihom -
Tomcat 5.5不能使用EL表达 ...
請在web.xml修改XSD<?xml version="1.0" enc ...
-- by trowa -
一个通用的泛型GenericH ...
谢谢!使用中!
-- by sangood -
Spring AOP四种创建通知( ...
我一直想知道如何拦截某个类中特定的方法,而不是所有的方法?
-- by yourgame -
HashTable和HashMap的区 ...
这么多总结,还算你的这个不错,谢谢,学习
-- by lysmart_8






评论排行榜