虚位以待(AD)
虚位以待(AD)
首页 > 数据库 > Oracle数据库 > web前端从Oracle数据库加载动态菜单所用到的数据表

web前端从Oracle数据库加载动态菜单所用到的数据表
类别:Oracle数据库   作者:码皇   来源:互联网   点击:

这篇文章主要介绍了web前端从Oracle数据库加载动态菜单所用到的数据表,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下

当我们在使用一款软件或者使用某某管理系统的时候,都会使用到分级菜单来给我们清晰的展示出其功能模块。而这些分级菜单呢,是需要通过对数据库的调用才能展示给我们的。今天,我就主要介绍一下制作分级菜单我们所要用到的数据表。

1、菜单表

    create table menu( menu_id number(10) primary key, menu_name varchar(30), menu_url varchar(200), parent_menu_id number(10) );
    /*如果菜单是一级菜单,p_menu_id为0*/ insert into menu values(1,'图书管理','',0);
    insert into menu values(2,'订单管理','',0);
    insert into menu values(3,'用户管理','',0);
    insert into menu values(4,'系统设置','',0);
    insert into menu values(5,'图书展示','/system/updatePassword.action',1);
    insert into menu values(6,'新增图书','',1);
    insert into menu values(7,'订单分类','',2);
    insert into menu values(8,'新建订单','',2);
    insert into menu values(9,'用户信息','',3);
    insert into menu values(10,'用户信息设置','',3);
    insert into menu values(11,'管理员信息','',4);
    insert into menu values(12,'管理员权限设置','',4);

2、角色表

    create table role( role_id number(10) primary key, role_name varchar(20) );
    insert into role values(1,'管理员');
    insert into role values(2,'销售总监');

3、用户表

    create table users( user_id number(30), user_name varchar2(40), user_password varchar2(40), user_sex char(3), user_phone varchar2(50), user_email varchar2(60), user_img varchar2(40) );
    create sequence seq_u;
    insert into users(user_id, user_name, user_password, user_sex, user_phone, user_email, user_img)values(seq_u.nextval,'黄飞鸿','1111qa','男','15000102345','1234567@qq.com',null);

4、角色菜单表

    create table role_menu( id number(10) primary key, role_id number(10), menu_id number(10) );
    /*录入角色和菜单的初始数据*/ insert into role_menu values(1,1,1);
    insert into role_menu values(2,1,2);
    insert into role_menu values(3,1,3);
    insert into role_menu values(4,1,4);
    insert into role_menu values(5,1,5);
    insert into role_menu values(6,1,6);
    insert into role_menu values(7,1,7);
    insert into role_menu values(8,1,8);
    insert into role_menu values(9,1,9);
    insert into role_menu values(10,1,10);
    insert into role_menu values(11,1,11);
    insert into role_menu values(12,1,12);

5、角色用户表

    create table role_user( id number(10) primary key, role_id number(10), user_id number(10) );
    /*录入角色和菜单的初始数据*/ insert into role_user values(1,1,1);
    insert into role_user values(2,2,2);

数据表建好之后,前端通过

    select distinct * from users u inner join role_user ru on u.user_id = ru.user_id inner join role_menu rm on ru.role_id = rm.role_id inner join menu m on m.menu_id = rm.menu_id where u.user_id =1

这么一条SQL语句即可调用用户ID所对应的系统菜单。

可显示如上:

效果图:

总结

以上所述是小编给大家介绍的web前端从Oracle数据库加载动态菜单所用到的数据表,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

  • Oracle 高速批量数据加载工具sql*loader使用说明
  • 安装Oracle加载数据库错误areasQueries的解决
相关热词搜索: oracle 加载 动态菜单