查看指定用户的所有表

本文介绍在Oracle数据库中查询特定用户所有表的四种实用方法,包括直接查询所有者为指定用户的表、通过tab视图获取当前登录用户的所有表、从user_tables表中查找当前用户的所有表以及从sys表空间的all_objects表中筛选指定用户和类型的对象。
  • 方法1:

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

select table_name, owner from all_tables where owner = 'scott';
  • 方法2:

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

select * from tab where tabtype = 'table';
  • 方法3:

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

select table_name from user_tables;
  • 方法4:

根据sys表空间下all_object表获得指定用户指定类型对象(表)

select object_name from sys.all_objects where owner='scott' and object_type='table';
提供的引用中未提及查看数据库中指定的方法。一般而言,不同的数据库系统查看指定的方式有所不同,以下为几种常见数据库的查看方法: ### MySQL 在 MySQL 中,可以使用 `SHOW TABLES` 语句查看指定数据库中的所有,若要查看指定的结构,可使用 `DESCRIBE` 或 `SHOW CREATE TABLE` 语句。 ```sql -- 查看指定数据库中的所有 USE your_database_name; SHOW TABLES; -- 查看指定的结构 DESCRIBE your_table_name; -- 或者 SHOW CREATE TABLE your_table_name; ``` ### OracleOracle 中,可通过查询数据字典视图 `ALL_TABLES` 或 `USER_TABLES` 来查看指定用户下的,若要查看结构,可使用 `DESC` 命令。 ```sql -- 查看指定用户下的所有 SELECT table_name FROM ALL_TABLES WHERE owner = 'your_schema_name'; -- 或者查看当前用户下的所有 SELECT table_name FROM USER_TABLES; -- 查看指定的结构 DESC your_table_name; ``` ### SQL Server 在 SQL Server 中,可通过系统视图 `sys.tables` 查看指定数据库中的所有,若要查看结构,可使用 `sp_help` 存储过程。 ```sql -- 查看指定数据库中的所有 USE your_database_name; SELECT name FROM sys.tables; -- 查看指定的结构 EXEC sp_help 'your_table_name'; ``` ### 达梦(DM) 在达梦数据库中,可通过查询系统视图 `DBA_TABLES` 或 `USER_TABLES` 来查看指定用户下的,若要查看结构,可使用 `SP_TABCOLINFO` 存储过程。 ```sql -- 查看指定用户下的所有 SELECT table_name FROM DBA_TABLES WHERE owner = 'your_schema_name'; -- 或者查看当前用户下的所有 SELECT table_name FROM USER_TABLES; -- 查看指定的结构 SP_TABCOLINFO('your_table_name'); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值