如何获取/生成现有配置单元表的create语句?

时间:2013-08-08 19:09:00

标签: sql hive hiveql

假设您已经在Hive中拥有“表”,是否有像其他数据库一样快速获取该表的“CREATE”语句?

3 个答案:

答案 0 :(得分:167)

As of Hive 0.10patch-967实现SHOW CREATE TABLE“显示创建给定表的CREATE TABLE语句,或创建给定视图的CREATE VIEW语句。 “

用法:

SHOW CREATE TABLE myTable;

答案 1 :(得分:17)

为Hive数据库中的所有表生成Create table ddls并导出到文本文件以便稍后运行的步骤:

步骤1)创建一个包含以下内容的.sh文件,例如hive_table_ddl.sh

#!/bin/bash
rm -f tableNames.txt
rm -f HiveTableDDL.txt
hive -e "use $1; show tables;" > tableNames.txt  
wait
cat tableNames.txt |while read LINE
   do
   hive -e "use $1;show create table $LINE" >>HiveTableDDL.txt
   echo  -e "\n" >> HiveTableDDL.txt
   done
rm -f tableNames.txt
echo "Table DDL generated"

步骤2)通过传递' db name'运行上面的shell脚本。作为对手

>bash hive_table_dd.sh <<databasename>>

输出:

您的数据库的所有create table语句都将写入HiveTableDDL.txt

答案 2 :(得分:3)

描述格式化/扩展将在配置单元中显示表的数据定义

hive> describe Formatted dbname.tablename;