从Oracle DB中选择所有表名

时间:2013-03-06 09:26:08

标签: c# sql oracle

我编写了一个程序,扫描数据库的所有表名并显示所有

我的Db有表:用户,订单,历史

它应如下所示:“现有表:用户订单历史记录”

该命令应该如何?

string SqlOrder="Select ??? from TestDB"

2 个答案:

答案 0 :(得分:3)

试试这个

SELECT 'Existing Tables: ' || wm_concat(table_name) tablenames 
  FROM user_tables;

对于样本Oracle HR数据库,它返回

TABLENAMES
------------------------------------------------------------------------------------
Existing Tables: REGIONS,LOCATIONS,DEPARTMENTS,JOBS,EMPLOYEES,JOB_HISTORY,COUNTRIES

更新LISTAGG()

示例
SELECT 'Existing Tables: ' || LISTAGG(table_name, ',') 
        WITHIN GROUP (ORDER BY table_name) tablenames 
  FROM user_tables;

答案 1 :(得分:1)

select table_name
from all_tables

手册中的更多详细信息:http://docs.oracle.com/cd/E11882_01/server.112/e25513/statviews_2117.htm#i1592091