Oracle静态数据字典
select * from user_tab_comments a where a.comments like '%操作%' 数据字典 寻找数据库中注释带有“操作”二字的所有表
静态数据字典
这类数据字典主要是由表和视图组成,应该注意的是,数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。静态数据字典中的视图分为三类,它们分别由三个前缀够成:user_*、 all_*、 dba_*。
user_*
该视图存储了关于当前用户所拥有的对象的信息。(即所有在该用户模式下的对象)
all_*
该试图存储了当前用户能够访问的对象的信息。(与user_*相比,all_* 并不需要拥有该对象,只需要具有访问该对象的权限即可)
dba_*
该视图存储了数据库中所有对象的信息。(前提是当前用户具有访问这些数据库的权限,一般来说必须具有管理员权限)
从上面的描述可以看出,三者之间存储的数据肯定会有重叠,其实它们除了访问范围的不同以外(因为权限不一样,所以访问对象的范围不一样),其他均具有一致性。具体来说,由于数据字典视图是由SYS(系统用户)所拥有的,所以在却省情况下,只有SYS和拥有DBA系统权限的用户可以看到所有的视图。没有DBA权限的用户只能看到user_*和all_*视。如果没有被授予相关的SELECT权限的话,他们是不能看到 dba_*视图的。
由于三者具有相似性,下面以user_为例介绍几个常用的静态视图:
user_users视图
主要描述当前用户的信息,主要包括当前用户名、帐户id、帐户状态、表空间名、创建时间等。例如执行下列命令即可返回这些信息。
select * from user_users
user_tables视图
主要描述当前用户拥有的所有表的信息,主要包括表名、表空间名、簇名等。通过此视图可以清楚了解当前用户可以操作的表有哪些。执行命令为:select * from user_tables
user_objects视图
主要描述当前用户拥有的所有对象的信息,对象包括表、视图、存储过程、触发器、包、索引、序列等。该视图比user_tables视图更加全面。例如, 需要获取一个名为“package1”的对象类型和其状态的信息,可以执行下面命令:
select object_type,status
from user_objects
where object_name=upper(‘package1’);
注意:upper的使用,数据字典里的所有对象均为大写形式,而PL/SQL里不是大小写敏感的,所以在实际操作中一定要注意大小写匹配。
user_tab_privs视图
该视图主要是存储当前用户下对所有表的权限信息。比如,为了了解当前用户对table1的权限信息,可以执行如下命令:
select * from user_tab_privs where table_name=upper('table1')
了解了当前用户对该表的权限之后就可以清楚的知道,哪些操作可以执行,哪些操作不能执行。
前面的视图均为user_开头的,其实all_开头的也完全是一样的,只是列出来的信息是当前用户可以访问的对象而不是当前用户拥有的对象。对于dba_开头的需要管理员权限,其他用法也完全一样,这里就不再赘述了。
-----------------------------------------------------------------------------------------------------------
select * from dictionary;
--查询该用户拥有哪些表
--user_tables主要描述当前用户拥有的所有表的信息,
----主要包括表名、表空间名、簇名等。通过此视图可以清楚了解当前用户可以操作的表有哪些
desc user_tables;
select table_name from user_tables;
select * from user_tables;
--查询该用户拥有哪些索引
select index_name from user_indexes;
--查询该用户拥有哪些视图
select view_name from user_views;
--查询该用户拥有哪些数据库对象,对象包括表、视图、存储过程、触发器、包、索引、序列、JAVA文件等。
select object_name from user_objects;
--主要描述当前用户的信息,主要包括当前用户名、帐户id、帐户状态、表空间名、创建时间等。
select * from user_users;
-----------------------------------------------------------------------------------------------------------
--user_/all_区别:
----all_列出来的信息是当前用户可以访问的对象而不是当前用户拥有的对象。
--查询某一用户下的所有表、过程、函数等信息。
select owner , object_name ,object_type from all_objects
-----------------------------------------------------------------------------------------------------------
--对于dba_开头的需要管理员权限,
--查询表空间的信息(当前用户必须拥有DBA角色)。
select * from dba_data_files
-----------------------------------------------------------------------------------------------------------
转载于:https://www.cnblogs.com/acm-bingzi/p/4080834.html
Oracle静态数据字典相关推荐
- 【Oracle】数据字典初步理解
Oracle数据字典 一.概念 1.组成部分 2.详解 (1).内部 RDBMS(X$)表 (2).数据字典表 (3).动态性能(V$)视图 (4).数据字典视图 二.查询 (1)内部表 (2)普通表 ...
- Oracle 体系结构(27)—— Oracle 的数据字典之(一):数据字典概述
Oracle 体系结构(27)-- Oracle 的数据字典之(一):数据字典概述 数据字典是 Oracle 存放数据库信息的地方,用来描述数据.比如一个表的创建者信息,创建时间信息,所属表空间信息, ...
- oracle 之数据字典屣履造门。
oracle 之数据字典屣履造门.(更新中) 今天是2013-06-20,哎,写这篇笔记的时候,我发现我是一个非常懒惰的人,这篇文章本该昨天就完成的,想起了钱鹤滩的<明日歌>,真是&qu ...
- 【oracle】数据字典
文章目录 引言 一.基本的数据字典 二.与数据库组件有关的数据字典 三.常用动态性能视图 引言 Oracle 数据字典由一系列表和视图构成,在创建数据库时生成,记录了数据库系统信息以及数据库中所有的对 ...
- oracle中做数据字典,oracle中数据字典是干嘛用的啊
数据字典中包 含: ● 数据库中所有方案对象(schema object)的定义(包括表,视图,索引,簇,同义词,序列,过程,函数,包,触发器等等) ● 数据库为一个方案对象分配了多少空间,以及该对象 ...
- Oracle常用数据字典表
Oracle常用数据字典表 查看当前用户的缺省表空间 SQL>select username,default_tablespace from user_users; 查看当前用户的角色 SQ ...
- Oracle常用数据字典表 Oracle常用数据字典表 查看当前用户的缺省表空间
Oracle常用数据字典表 Oracle常用数据字典表 查看当前用户的缺省表空间 SQL>select username,default_tablespace from user_users; ...
- oracle静态,oracle静态sql和动态sql
Excute immediate 动态SQL语句 using 绑定参数列表 returning into 输出参数列表; 对这一语句作如下说明: 1) 动态SQL是指DDL和不确定的DML(即带参数的 ...
- oracle循环数据字典,Oracle DUL工作原理和技术实现
DUL工具是Oracle数据库挽救数据的最后手段,你用到DUL的时候,大部分情况下,数据库已经不能启动了,甚至有些数据文件已经损坏了.那么DUL又是怎样在这些极端的情况下把数据导出来的呢?下面我们就来 ...
最新文章
- 95后博士生曹原连发两篇Nature,均为一作,网友:这才是真正的后浪
- Cisco 3560 丢失 IOS 解决过程
- python函数增强代码可读性_写Python必须知道的这几个代码技巧!你会吗?
- VUE 数据绑定模块渲染 computed(实现通过路由id 查询数据json结构,对应的值来放在面包屑中)...
- 8、jeecg 笔记之 自定义word 模板导出(一)
- 怒肝 8 个月源码,我成为了 Spring 开源贡献者
- [转载] Python中的解析式和生成器表达式
- 利用html sessionStorge 来保存局部页面在刷新后回显,保留
- 计算机组成实验八,计算机组成原理实验八内存系统实验
- UILabel-IOS开发
- freeMarker导出word富文本带图片或者指定目录下的图片
- 《Advanced .NET Debugging》 读书笔记 Listing 3-6: 使用sxe在程序载入mscorwks之后停下来载入sos...
- 初学者CAD画矩形如何定义尺寸?
- 微信小程序-敏感内容检测 文本过滤 图片检测
- 神经网络计算棒怎么用,英特尔神经网络计算棒
- Proxmox VE桌面虚拟化
- 大型网站图片服务器架构的演进!
- 解码mmo游戏服务器二:地图自动寻路
- 数据结构和算法(Java),上
- Video.js的简单使用介绍
热门文章
- 计算机网络—无线局域网
- [蓝桥杯]基础练习 十六进制转八进制
- 试题6 算法训练 数据交换(指针)
- 牛客网暑期ACM多校训练营(第十场): H. Rikka with Ants(类欧几里得)
- bzoj 2002: [Hnoi2010]Bounce 弹飞绵羊(分块)
- kubernetes 简介:调度器和调度算法((Affinity/Anti-Affinity, Taints and Tolerations, 自定义调度器 )
- 贺利坚老师汇编课程52笔记:汇编语言模块化程序设计
- 欧几里得求最大公约数--JAVA递归实现
- 【旧文章搬运】360安全卫士HookPort.sys完美逆向
- 巧用编辑器正则表达式,批量修改删除超链接