热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

查询Oracle正在执行和执行过的SQL语句(一)v$session表的权限

2019独角兽企业重金招聘Python工程师标准oracle触发器中用v_$session问题讨论在非系统用户底下建触发器时引用v$session记录类型时出现问题错误&#x

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

oracle 触发器中 用 v_$session 问题讨论

在非系统用户底下建触发器时引用v$session记录类型时出现问题
错误:“表和视图不存在”

但是在 pl/sql 中是可以运行 select * from v$session 的

v$session是同义词,v_$session是视图

需要以下处理:

可直接授权

sys   :   grant   select on v_$session to   youruser;

说明:

这是个很好的问题

一个普通用户,具有了select any dictionary的权限后,就可以访问任何一个系统视图,包括v$session,由于dba角色包含了select any dictionary的权限,所以你的hospital用户select * from v$session是没问题的
但是你在PL/SQL中,要参照一个表rowtype或者在定义cursor的时候使用到某个表,那你得在这个表上有select权,尽管你的dba角色有select any table的权限,但由于在9i中规定

在初始化参数O7_DICTIONARY_ACCESSIBILITY取缺省值(false)的情况下,一个用户即使有select any table的权限,却还是不能访问sys对象的,除非
1 把O7_DICTIONARY_ACCESSIBILITY设置为true,也就是偶说的做法
或者
2 直接把sys对象的select权授予给这个用户,也就是biti所说的做法

在存储对象中引用字典表(视图)必须单独授权
SQL> select synonym_name,table_name from dba_synonyms where synonym_name like '%SESSION%';

SYNONYM_NAME                TABLE_NAME
------------------------------ ------------------------------
V$SESSION                   V_$SESSION

v$session是同义词,v_$session是视图

这个问题,本质上,是pl/sql程序的特点的问题
在 pl/sql程序设计一书中有讲到,由于 pl/sql 的编译的一些特性,oracle 采取了 角色在   存储过程、函数、包 等有名pl/sql 中 不起作用的策略,必须直接授权才生效,所以即使有dba角色在存储过程中也是无效的


转:https://my.oschina.net/softwarechina/blog/141142



推荐阅读
  • DBA的日常运维–Part11.活动状态检查 ... [详细]
  • ORACLE常用SQL技巧
    2019独角兽企业重金招聘Python工程师标准ORACLE常用SQL技巧1.SELECT子句中避免使用“*”当你想在SELECT子句中列出所有的COLUMN时,使用动态SQ ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 一个不错的JDBC连接池教程(带具体例子)
    1.前言数据库应用,在许多软件系统中经常用到,是开发中大型系统不可缺少的辅助。但如果对数据库资源没有很好地管理(如:没有及时回收数据库的游 ... [详细]
  • ubuntu更新python3版本并安装scapy
    下载编译安装下载wgethttps:www.python.orgftppython3.7.3Python-3.7.3.tgz其他版本下载:https:www.pyt ... [详细]
  • 用户管理_用户管理的小项目
      之前学习链表数据结构的时候,写过(相信很多人都做过)dos窗口版的学生管理系统,通过输入数字来实现CURD学生的信息,顶多就是把数据写入文件来存储数据 ... [详细]
  • 以下数据来源于TRDIR,TRDIRT,有一些对应系统的事务,有具体的T-CODE.以下我会标注一些我个人认为会常用到的.程序功能描述RSORA000O ... [详细]
  • 这篇文章主要介绍“大文本数据怎么导入导出到数据库”,在日常操作中,相信很多人在大文本数据怎么导入导出到数据库问题上存在疑惑,小编查阅了各 ... [详细]
  • 为什么python是动态类型语言_Python 3.7.0 面向对象的动态类型语言
    代表Python开发社区和Python3.7发布团队,我们很高兴地宣布https:www.python.orgdownloadsreleasepython-370 ... [详细]
  • Oracle10g备份导入的方法及注意事项
    本文介绍了使用Oracle10g进行备份导入的方法及相关注意事项,同时还介绍了2019年独角兽企业重金招聘Python工程师的标准。内容包括导出exp命令、删用户、创建数据库、授权等操作,以及导入imp命令的使用。详细介绍了导入时的参数设置,如full、ignore、buffer、commit、feedback等。转载来源于https://my.oschina.net/u/1767754/blog/377593。 ... [详细]
  • 漫画:位运算系列篇(只出现一次的数字)
    今天是小浩算法“365刷题计划”第62天。仍然分享一道关于位运算颇为简单的题型,同时,从明天开始将会提高难度,大家做好准备。01PARTS ... [详细]
  • 实验七、绕过ASLR 第二部分
    7.1实验环境VM配置:Ubuntu12.04(x86)7.2实验原理什么是爆破?使用爆破技巧,来绕过共享库地址随机化。7.3实验过程7. ... [详细]
  • 1.trigraph三字符组据说是为了照顾旧式键盘,还是为了键盘坏了,或者是使用非ASCII字符编码的语言输入方便,设计了一些三元字符组& ... [详细]
  • 联合查询1:概述将多次查询(多条select语句),在记录上进行拼接(字段是不会增加的),只要求字段一样,与数据类型无关union:联合的意思,即把两次或多次查询结果 ... [详细]
  • mysql相关操作_MySQL之记录相关操作
    一介绍MySQL数据操作:DML在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括使用INSERT实现数据的插 ... [详细]
author-avatar
手机用户2602933827
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有