我正在努力获取给定用户名或当前会话/用户的表;我可以通过使用select table_name from all_tables;获取所有表,但它也可以检索默认创建的表。我只想要我们创建的表。
即使当我从可插拔数据库中检索表时,它也会获取所有表( default - tables -with-$-sign-name),但是当我在ORACLE SQL DEVELOPER中连接pluggable-user时,它只显示(用户创建的)不带默认表的表。
我想要所有显示表的查询,没有默认($ sign name)的users表,users;用于sqlplus。我使用的是ORACLE-12C。
发布于 2015-11-26 16:28:43
只需对所有者进行过滤:
select table_name from all_tables where owner='YOUR OWNER NAME';发布于 2015-11-26 16:50:23
您可以根据您拥有的权限来查询视图DBA|ALL|USER_TABLES。
查询USER_TABLES将提供您已登录到的current owner拥有的所有表。
例如,
SQL> show user
USER is "LALIT"
SQL> SELECT table_name FROM user_tables;
TABLE_NAME
--------------------------------------------------------------------------------
no rows selected
SQL> create table t(a number);
Table created.
SQL> SELECT table_name FROM user_tables;
TABLE_NAME
--------------------------------------------------------------------------------
T在使用数据库管理员/所有时,您必须以大写形式筛选所有者。
例如,
SQL> show user
USER is "SYS"
SQL> SELECT table_name FROM dba_tables WHERE OWNER='LALIT';
TABLE_NAME
--------------------------------------------------------------------------------
Thttps://stackoverflow.com/questions/33933680
复制相似问题