有没有办法可以在一个查询中提取所有表的DDL。
select DatabaseName,TableName,RequestText from db.tables;
给出表中的数据库名称,表名和最后一个DDL。但是有可能让DDL以结果集的形式创建表到查询而不是多次查询show db.tableName
答案 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';