웹 전단 에서 Oracle 데이터베이스 에서 동적 메뉴 를 불 러 오 는 데 사용 되 는 데이터 시트

3795 단어 Oacle로드메뉴
우 리 는 소프트웨어 를 사용 하거나 특정한 관리 시스템 을 사용 할 때 등급 별 메뉴 를 사용 하여 기능 모듈 을 뚜렷하게 보 여 준다.이 등급 별 메뉴 들 은 데이터베이스 호출 을 통 해 보 여 줄 수 있 습 니 다.오늘 은 등급 별 메뉴 를 만 드 는 데 필요 한 데이터 표를 소개 하 겠 습 니 다.
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','[email protected]',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 에 대응 하 는 시스템 메뉴 를 호출 할 수 있 습 니 다.

위 와 같이 표시 가능:
효과 그림:

총결산
위 에서 말 한 것 은 소 편 이 소개 한 웹 전단 에서 Oracle 데이터베이스 에서 동적 메뉴 를 불 러 오 는 데 사용 되 는 데이터 시트 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기