你是否对获得Oracle对象的权限的实际操作感到十分头疼?如果是这样子的话,以下的文章将会给你相应的解决方案,以下的文章主要是介绍获得Oracle权限的方案,即,通过TABLE FUNCTION获得Oracle权限。

系统权限 角色权限 ,Oracle提供了以DBA_* ROLE_* SESSION_* 等开头的系统视图供用户查询权限分配的信息,我们也可以通过OEM等其他工具来得到这些权限,在这里我们如果通过TABLE FUNCTION来获得这些Oracle权限.
声明:由于获得权限需要系统视图的支持,我们需要dba_sys_privs,dba_role_privs,role_sys_privs,role_tab_privs,dba_tables有读Oracle权限,当然,可以把下面的包建立在sys用户下面,也可以通过授权模式在其他用户上使用.
创建包:
1:创建对象
2:创建包
包中只列举了一些常用的获得Oracle权限的功能
create or replace package ManPrivs is
—Author : LIYAN
—Created : 2009-8-26 10:06:18
执行此包中过程需要对dba_sys_privs,dba_role_privs,role_sys_privs,role_tab_privs,dba_tables有读权限
并且拥有DBA授权能力
建议系统权限以及角色权限授权、权限回收操作使用OEM完成
查询角色包含角色权限建议使用OEM完成
查看对象的表格Oracle权限
产看对象的系统权限
查看对象的角色Oracle权限
查看对象拥有角色的系统权限
查看对象拥有角色的表格权限
回收对象的表格Oracle权限
对特定的对象进行授予特殊Oracle权限
【编辑推荐】
mysql把一个数据库中的数据复制到另一个数据库中的表 2个表结构相同
1、使用软件Navicat就可迁移复制数据库,打开Navicat,右键点击左边空白的地方,点击New Connection下的MySQL,创建一个服务器的连接,下面将演示把本地的数据迁移到服务器:2、在弹出的创建新连接的窗口里,输入服务器的IP,数据库账号,密码等,然后就可以连接数据库了:3、创建好后们打开本地的数据库,点击“Data Transfer”(数据传输),接着弹出新的界面:4、新窗口中在左边选择本地数据库的库,和需要转移的表,可以选择一个,或多个表:5、然后在右边的目标里,选择服务器的连接,然后选择服务器上的数据库:6、选择完成后,就开始进行数据转移了,数据量不是很大的,很快就会转移完成的。以上就是mysql中数据复制到另一个数据库的方法:
oracle的分页处理,oracle中针对一个一千条记录的表如果要查200到300的记录怎么查
Oracle有3种分页处理语句1、根据ROWID分页2、按分析函数分页3、按rownum分页其中1的效率最高,2的效率最低,3的效率比2好很多,比1的差距也很小,是经常使用的分页处理语句;3的语句有固定的格式,基本有以下步骤构成a、查询原表,从原表中取出分页中需要的字段,并排序select ename ,sal from emp order by salb、对a取到的内容进行rownum编号select a1.*,rownum rn from (select ename ,sal from emp order by sal) a1 c、添加分页结束行号select a1.*,rownum rn from (select ename ,sal from emp order by sal) a1whererownum<=300d、添加分页开始行号select a2.* from (select a1.*,rownum rn from (select ename ,sal from emp order by sal) a1whererownum<=300) a2 where rn>=200d中的语句可以用作rownum分页的模板使用,使用时修改select ename ,sal from emp order by sal,开始行号,结束行号就可以了。
create or replace procedure SP_Date(start_date in varchar2,end_date in varchar2,sum_date out number) isbeginsum_date:=to_date(start_date,yyyymmdd)-to_date(end_date,yyyymmdd);end SP_DATE;
发表评论