`
zhykhs
  • 浏览: 61720 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ORACLE中查询指定用户拥有的所有表

阅读更多

方案1:

根据指定用户名获得对应用户所拥有权限的表

SQL> select table_name, owner from all_tables where owner = 'SYS' and rownum < 6;
TABLE_NAME        OWNER
------------------------------ ------------------------------
AUDIT_ACTIONS   SYS
AW$AWCREATE    SYS
AW$AWCREATE10G SYS
AW$AWMD           SYS
AW$AWREPORT    SYS

方案2:

通过tab视图获得当前登录用户所有表和视图,通过tabletype过滤获得所有表

 

SQL> select * from tab where tabtype = 'TABLE';
 
TNAME                   TABTYPE  CLUSTERID
------------------------------ ------- ----------
DEPT                      TABLE 
EMP                        TABLE 
BONUS                   TABLE 
SALGRADE             TABLE 

 

 tab,dual概念:
Tab is a view, as seen:

create or replace view sys.tab as
select o.name,
decode(o.type#, 2, 'TABLE', 3, 'CLUSTER',
4, 'VIEW', 5, 'SYNONYM'), t.tab#
from sys.tab$ t, sys.obj$ o
where o.owner# = userenv('SCHEMAID')
and o.type# >=2
and o.type# <=5
and o.linkname is null
and o.obj# = t.obj# ( )

Dual is a table with a unique column.
This column is a dummy varchar, that returns what you type.
That´s why if you type select * from dual, the result will be 'X'.
 

方案3:

根据user_tables表获得当前用户拥有所有表

SQL> select table_name from user_tables;
 
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
方案4:
根据sys表空间下all_object表获得指定用户指定类型对象(表)
SQL> select object_name from sys.all_objects where owner = 'SCOTT' and OBJECT_TYPE = 'TABLE';
 
OBJECT_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
 
分享到:
评论

相关推荐

    oracle中将一个用户的所有表的权限授予另一个用户的方法

    本文将深入探讨如何在Oracle中将一个用户的所有表的权限授予另一个用户,这一过程通常在PL/SQL环境下通过执行特定的命令来完成。下面我们将详细解析这一操作的步骤、原理以及可能遇到的问题。 ### Oracle中的权限...

    oracle查询表的所有列并用逗号隔开

    在Oracle数据库环境中,有时我们需要...总之,通过以上步骤和示例代码,你可以有效地在Oracle数据库中实现查询表的所有列并用逗号隔开的功能。这种方法不仅适用于单一表的操作,也可以扩展到更复杂的多表处理场景中。

    查询oracle中所有用户信息

    ### 查询Oracle中所有用户信息的知识点 #### 一、概述 在Oracle数据库管理与维护过程中,经常需要查询数据库中的各种用户信息,以便更好地理解和管理数据库环境。本文将详细介绍如何使用SQL命令来查询Oracle数据库...

    oracle查询表的结构 和表的个数

    对于当前用户所拥有的表,可以通过 `USER_TAB_COLUMNS` 视图来查询表的详细结构: ```sql SELECT table_name, column_name, data_type FROM user_tab_columns; ``` 这条命令将返回当前用户所有表的列名和相应的...

    oracle中查询表对象详细信息

    ### Oracle中查询表对象详细信息 在Oracle数据库中,了解如何查询表对象的详细信息对于进行数据管理和维护至关重要。本文将详细介绍如何通过多种方法来获取表的信息,包括但不限于表注释、列注释以及用户权限等。 ...

    oracle创建huike用户与表空间并授权

    在Oracle数据库管理中,创建用户和表空间是基础操作,对于数据库的管理和资源分配至关重要。在本教程中,我们将详细探讨如何在Oracle中创建名为“huike”的用户,为该用户分配表空间,并进行相应的权限授予。首先,...

    ORACLE用户常用数据字典的查询使用方法

    通过这个命令,我们可以了解当前用户拥有哪些表以及这些表的基本属性。 #### 四、查询包含特定字符的对象名 ```sql SQL&gt; select object_name, object_id from user_objects where instr(object_name, 'LOG') &gt; 0; ...

    Oracle表分区 建表空间 创建用户

    - `DEFAULT TABLESPACE`: 指定用户的默认表空间。 ##### 删除用户 如果需要删除用户,可以使用以下SQL语句: ```sql DROP USER JPA CASCADE; ``` 这里需要注意的是,`CASCADE`关键字表示即使该用户拥有对象也会...

    oracle10G创建用户和表空间

    删除用户时,可以使用`DROP USER`命令,注意是否包含`CASCADE`关键字,这决定了是否同时删除用户拥有的所有对象: ```sql DROP USER username CASCADE; ``` 对于表空间,使用`ALTER TABLESPACE`命令可以修改其属性...

    oracle创建表空间、用户

    - `DBA`:数据库管理员权限,拥有对数据库的所有控制权,包括管理所有对象的权限。 - `TO CIVIDEFEN`:将这些权限授予用户`CIVIDEFEN`。 #### 四、数据导入导出 数据的导入导出是在Oracle数据库中常见的操作,...

    oracle10g的用户和表空间重建

    1. **查询表空间的空闲空间**: ```sql SELECT SUM(bytes)/(1024*1024) AS free_space, tablespace_name FROM dba_free_space GROUP BY tablespace_name; ``` 此SQL语句可以帮助我们了解每个表空间当前的空闲...

    Oracle查看各表占用空间

    为了查看指定用户(例如`VIO_ADMIN`)在指定表空间(例如`DT_VIO_DATA`)中的所有表所占用的空间,可以使用以下SQL查询语句: ```sql SELECT segment_name AS "Table", SUM(bytes) / (1024 * 1024) || 'M' AS ...

    oracle用户的权限详细说明以及赋权的操作

    分配角色后,用户将拥有角色中定义的所有权限。另外,如果需要查看某个角色拥有哪些权限,可以查询dba_sys_privs视图,例如:`SELECT grantee, privilege FROM dba_sys_privs WHERE grantee = 'RESOURCE' ORDER BY ...

    Oracle数据库表建立字段唯一性的方法

    在Oracle数据库中,确保表中特定字段具有唯一性是数据完整性的重要方面。这可以通过创建唯一约束或唯一索引来实现。以下是对"Oracle数据库表建立字段唯一性方法"的详细解释: 1. **唯一约束(Unique Constraint)**...

    oracle创建表空间,创建用户,授权给新建的用户实例全解

    在Oracle数据库管理中,表空间(Tablespace)是存储数据的主要单位,用户(User)则是在数据库中拥有特定权限的实体。本篇文章将深入解析如何在Oracle中创建表空间、创建用户以及如何将权限授予新创建的用户。 一、...

    oracle 系统表大全

    `:查询表`CUSTOMERS`的extent分配情况。 #### 六、索引管理 1. **索引信息查询**: - `SELECT * FROM dba_indexes;`:列出所有索引信息。 - `SELECT * FROM dba_ind_columns;`:获取所有索引列的信息。 - 联合...

    Oracle数据库用户角色、表空间创建、删除命令.pdf

    - `CASCADE`选项表示级联删除,即在删除用户的同时也会删除该用户拥有的所有对象。 #### 五、删除表空间 1. **删除表空间前的注意事项**: - 在删除表空间之前,需要确保该表空间不再被其他用户使用。 - 如果表...

    Linux下修改Oracle用户密码

    本文将深入解析在Linux操作系统中如何安全有效地修改Oracle数据库用户的密码,包括操作步骤、注意事项以及相关原理。 ### 深入理解Linux下修改Oracle用户密码 #### 一、前期准备与环境要求 在开始修改Oracle用户...

    Oracle查询用户权限

    这将显示指定用户拥有的所有系统权限。若要查看授予其他用户的权限,可以将GRANTEE替换为相应用户名。 查询对象权限则可以使用: ```sql SELECT * FROM DBA_TAB_PRIVS WHERE GRANTEE = '用户名'; ``` 此查询将列出...

    Oracle数据库用户角色、表空间创建、删除命令

    - `TEMPORARY TABLESPACE`:指定用户的临时表空间。 #### 授予用户权限 用户创建后,需要赋予其相应的权限才能进行操作: ```sql GRANT DBA TO BBC; GRANT CONNECT, RESOURCE TO BBC; ``` **参数解释:** - `...

Global site tag (gtag.js) - Google Analytics