Hive—数据库级增、删、改、查
一、创建数据库
1)创建数据库
hive (default)> create database if not exists db_hive;
2)创建一个数据库,指定数据库在HDFS上存放的位置
hive (default)> create database db_hive2 location '/db_hive2.db';
二、查询数据库
2.1 显示数据库
1.显示数据库
hive (default)> show databases; OK database_name db_hive db_hive2 default Time taken: 0.259 seconds, Fetched: 3 row(s)
2.过滤显示查询的数据库
hive (default)> show databases like 'db_hive*'; OK database_name db_hive db_hive2 Time taken: 0.012 seconds, Fetched: 2 row(s)
2.2 查看数据库详情
1.显示数据库信息
hive (default)> desc database db_hive; OK db_name comment location owner_name owner_type parameters db_hive hdfs://hadoop102:9000/user/hive/warehouse/db_hive.db atguigu USER Time taken: 0.042 seconds, Fetched: 1 row(s)
2.显示数据库详细信息,extended
db_name comment location owner_name owner_type parameters db_hive hdfs://hadoop102:9000/user/hive/warehouse/db_hive.db atguigu USER Time taken: 0.029 seconds, Fetched: 1 row(s)
2.3 切换当前数据库
hive (default)> use db_hive; OK Time taken: 0.042 seconds
三、 修改数据库
用户可以使用ALTER DATABASE命令为某个数据库的DBPROPERTIES设置键-值对属性值,来描述这个数据库的属性信息。数据库的其他元数据信息都是不可更改的,包括数据库名和数据库所在的目录位置。
hive (default)> alter database db_hive set dbproperties('createtime'='20210830'); OK Time taken: 0.628 seconds
在hive中查看修改结果
hive (default)> desc database extended db_hive; OK db_name comment location owner_name owner_type parameters db_hive hdfs://hadoop102:9000/user/hive/warehouse/db_hive.db atguigu USER {createtime=20210830} Time taken: 0.446 seconds, Fetched: 1 row(s)
四、 删除数据库
1.删除空数据库
hive>drop database db_hive2;
2.如果删除的数据库不存在,最好采用 if exists判断数据库是否存在
hive> drop database db_hive; FAILED: SemanticException [Error 10072]: Database does not exist: db_hive hive> drop database if exists db_hive2;
3.如果数据库不为空,可以采用cascade命令,强制删除
hive> drop database db_hive; FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. InvalidOperationException(message:Database db_hive is not empty. One or more tables exist.) hive> drop database db_hive cascade;
atguigu视频整理