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;
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;
相关文章推荐
- Oracle 根据两个数获取百分比的函数
- 【根据用户ID获取用户信息】
- 从零开始写C# MVC框架之--- 根据用户角色权限获取菜单
- 105---oracle的 函数,转换函数, 分析函数, 表空间,系统用户, 权限和角色, 序列, 同义词, 索引,表分区,,,
- ORACLE 的用户与角色学习笔记
- ibatis学习之--3、根据id查询对应的用户信息
- 倪蒙oralce学习笔记之Oracle创建删除用户、角色、表空间、导入导出数据库总结
- Oracle学习操作(7)用户、权限、角色
- Oracle学习 用户、权限、角色
- Oracle角色,函数,循环的分析学习
- ibatis学习之--6、根据id来更新用户信息
- 获取用户ID Monxin专用(PHP代码函数)
- 获取所有用户表及根据表Id取得表字段信息
- shiro-根据JSESSIONID获取用户信息和判断是否登陆
- asp.net membership 获取用户id ;根据用户id获取membershipuser
- ASP.NET中获取当前用户ID 用户名 用户角色 用户IP地址
- 关于stat函数和根据st_mode 的值获取目标文件的文件类型和用户权限,及对相关系统宏的一点想法
- 根据用户id获取其所有微博
- 根据用户ID获取对应描述
- magento中根据用户的id获取用户的所有订单以及每个订单中的物品 以及物品的相关属性