假设您在Hive中已经有“表”,是否有像其他数据库一样的快速方法才能获得该表的“ CREATE”语句?
Answers:
从Hive 0.10开始,此补丁967实现SHOW CREATE TABLE
了“显示CREATE TABLE
创建给定表的语句,或者CREATE VIEW
语句创建给定视图语句”。
用法:
SHOW CREATE TABLE myTable;
为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>>
输出:
数据库的所有创建表语句将被写入HiveTableDDL.txt