获取teradata中所有表的DDL作为结果集

时间:2015-04-06 06:49:43

标签: sql teradata

有没有办法可以在一个查询中提取所有表的DDL。

select DatabaseName,TableName,RequestText from db.tables; 

给出表中的数据库名称,表名和最后一个DDL。但是有可能让DDL以结果集的形式创建表到查询而不是多次查询show db.tableName

2 个答案:

答案 0 :(得分:1)

你可以试试这个:

sel 'show table ' || databasename   ||'.'||   tablename ||';'  
from dbc.tables where databasename = 'dbname' and tablekind = 'T';

然后您可以执行此查询的输出以获取DDL,如:

show table dbname.sometablename;

答案 1 :(得分:-1)

下面的查询将为您提供用户用于创建表的DDL查询。

select RequestText
from dbc.tables where databasename = 'db_name' and tablekind = 'T';