当我们这样子删除一个包含表的数据库时,会显示失败:
hive> drop database hive;
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. InvalidOperationException(message:Database hive is not empty. One or more tables exist.)
解决办法有两个:
1)把数据库里面的表删除干净了再删除数据库
2)在删除命令后面加上关键字cascade,如下:
hive> drop database hive cascade;
OK
Time taken: 1.222 seconds
hive> show databases;
OK
dblab
default
myhive
Time taken: 0.037 seconds, Fetched: 3 row(s)