Oracle中如何使用dba_视图,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

数据字典相关连接:

Oracle数据字典:常用字典

Oracle数据字典:user_视图

Oracle数据字典:all_视图

DBA_ 视图返回有关数据库中所有对象的信息,而无需考虑对象的所有者。只有数据库管理员才可访问此视图。例如,对 DBA_TABLES 的查询将返回数据库中所有关系表的列表。

有时候数据库管理员可授予开发人员访问 DBA 视图的权限。同义词并不是为这些视图而创建的,因为只有管理员才可查询 DBA 视图。因此,要查询 DBA 视图,管理员必须在此视图名前冠以所有者名 SYS。

以下查询列出有关数据库中所有表的信息。

SQL>SELECTusername,user_id,account_statusfromdba_userswhereuser_id>5anduser_id<20;

DBA_ 视图的各种表如下:


说明

DBA_TABLES
包含数据库中所有用户的表。

DBA_CATALOG
包含数据库中定义的表、视图和同义词。

DBA_OBJECTS
包含所有用户的对象。

DBA_DATAFILES
包含有关数据文件的信息。

DBA_TABLESPACES
提供有关数据库中每个表空间的信息。

DBA_TAB_COLUMNS
提供有关表中每个列的详细信息。

DBA_SOURCE
显示存储函数、触发器和 Java 对象的源代码。

DBA_ 视图中的表

示例 9 演示 DBA_CATALOG 视图的用法。

SQL>SELECTowner,table_name,table_typefromdba_catalogwheretable_type='TABLE'andtable_namelike'D%'andownerlike'%M';

此示例显示表的所有者、表名和表类型,即不论是表或视图,其表类型为表,所有者名以“M”结尾,表名以字母“D”开头。

示例 10 演示 DBA_TAB_COLUMNS 视图的用法。

SQL>SELECTowner,table_name,column_namefromdba_tab_columnswhereowner='SYSTEM'andtable_namelike'B%';

此示例显示 DBA_TABLESPACES 视图的表空间名、块大小和状态。

示例 11 演示 DBA_TABLESPACES 视图的用法。

SQL>SELECTTABLESPACE_NAME,BLOCK_SIZE,STATUSFROMDBA_TABLESPACES;

此示例显示 DBA_TABLESPACES 视图的表空间名、块大小和状态。

示例 12 演示 DBA_SOURCE 视图的用法。

SQL>SELECTowner,name,typefromdba_sourcewheretype='PACKAGEBODY'andowner='SYSTEM';

此示例显示 DBA_SOURCE 视图的所有者、名称和类型,此处的类型是“PACKAGE BODY”,所有者是“SYSTEM”。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。