您的位置:首页 > 数据库 > Oracle

oracle函数学习_根据用户id获取用户角色

2017-05-02 14:25 204 查看
create or replace function FN_GET_ROLES(v_user_id varchar2) return varchar2 is
type zy_emp_cursor is ref cursor;
v_emp_cursor zy_emp_cursor;
v_role_dscr varchar2(2000);
v_emp_dscr varchar2(64);
v_index number;
begin
open v_emp_cursor for SELECT A_ROLES.ROLE_DSCR
FROM A_PT_ROLES_USERS A_USERS
INNER JOIN A_PT_ROLES A_ROLES
ON A_USERS.ROLE_ID = A_ROLES.ROLE_ID
WHERE A_USERS.USER_ID = v_user_id;
v_index := 0;
loop
fetch v_emp_cursor into v_emp_dscr;
exit when v_emp_cursor%notfound;
if v_index = 0 then
begin
v_role_dscr := v_emp_dscr;
end;
else
v_role_dscr := v_role_dscr || ',' || v_emp_dscr;
end if;
v_index := v_index + 1;
end loop;

close v_emp_cursor;
return v_role_dscr;
end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: