Hive(2) DDL语句
DDL 数据定义语言
数据库操作
创建数据库
- 创建数据库
create database [if not exists] <表名>
[comment <表的说明>]
[localtion <路径>]
[with dbproperties (<属性名> = <属性值>, ... )];
说明
- if not exists: 如果不存在就创建, 如果存在就不创建
- localtion <路径>: 指定该数据库在HDFS中的路径, 如果不加, 默认是
/user/hive/warehouse/
目录- with dbproperties (<属性名> = <属性值>, … ) : 这里的属性值是自定义的, 比如创建时间, 备注等
查询数据库
- 通配符匹配数据库(使用 * 做 通配符)
show database like 'defau*';
- 查看数据库的详情
desc database [extended] <数据库名>;
说明
- extended : 可以查看数据库的详细信息
- 切换使用的数据库
user <数据库名>;
修改和删除数据库
- 修改数据库
alter database <数据库名> set dbproperties("<属性名>" = "<值>");
举例
alter database test set dbproperties("create_time" = "2019");
- 删除数据库
drop database <数据库名> [cascade];
说明
cascade : 默认只能删除空的数据库, 如果数据库非空, 就加上这个属性就可以删除了
表操作
创建和删除表
- 创建表
create [external] table [if not exists] <表名>
[(列名 <数据类型> [comment <该列的备注>, ...]]
[comment <表的备注>]
[partitioned by (列名 <数据类型> [comment <列的备注>], ...)]
[clustered by (列名1, 列名2, ...) [sorted by