上一篇:Hive学习(一):安装运行
数据库 创建数据库CREATE (DATAbase|SCHEMA) [IF NOT EXISTS] 数据库名 [COMMENT 注释] [LOCATION hdfs存储路径] [WITH DBPROPERTIES (属性名=属性值, ...)];
-
DATAbase|SCHEMA:意义相同
-
WITH DBPROPERTIES:设置一些自定义键值对
可以到hdfs中看看,可以发现数据库就是一个文件夹
删除数据库DROP (DATAbase|SCHEMA) [IF EXISTS] 数据库名 [RESTRICT|CASCADE];
RESTRICT:默认设置,如果数据库中有表则删除失败
CASCADE: 强制删除
修改数据库官方文档各版本能修改的数据库信息
ALTER (DATAbase|SCHEMA) database_name SET DBPROPERTIES (property_name=property_value, ...); -- (Note: SCHEMA added in Hive 0.14.0) ALTER (DATAbase|SCHEMA) database_name SET OWNER [USER|ROLE] user_or_role; -- (Note: Hive 0.13.0 and later; SCHEMA added in Hive 0.14.0) ALTER (DATAbase|SCHEMA) database_name SET LOCATION hdfs_path; -- (Note: Hive 2.2.1, 2.4.0 and later) ALTER (DATAbase|SCHEMA) database_name SET MANAGEDLOCATION hdfs_path; -- (Note: Hive 4.0.0 and later)其他
show databases; -- 查看所有数据库 use 数据库名; -- 使用数据库 desc database [extended] 数据库名; -- 查看数据库详细信息 show create database 数据库名; -- 查看数据库建表语句表 创建表
CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [数据库名.]表名 [(列名 类型 [COMMENT 列注释], ...)] [COMMENT 表注释] [PARTITIonED BY (列名 数据类型 [COMMENT 列注释], ...)] [CLUSTERED BY (列名, 数据类型, ...) [SORTED BY (列名 [ASC|DESC], ...)] INTO 桶数量 BUCKETS] [ROW FORMAT row_format] [LOCATION 存储在hdfs的路径] [TBLPROPERTIES (属性名=属性值, ...)];
- TEMPORARY:临时表,当前会话有效
- EXTERNAL:外部表,由hdfs管理的表
- ROW FORMAT:hive解析数据所使用的分隔符
- DELIMITED [FIELDS TERMINATED BY char]:字段值分隔符
- [COLLECTION ITEMS TERMINATED BY char]:集合元素分隔符(包括array,struct类型)
- [MAP KEYS TERMINATED BY char]:key-value分隔符
- [LINES TERMINATED BY char]:行分隔符
- DELIMITED [FIELDS TERMINATED BY char]:字段值分隔符
hdfs中看一下,表就是数据库文件夹下的一个文件夹
删除表
DROP TABLE [IF EXISTS] 表名清空表
TRUNCATE [TABLE] 表名修改表
列举一些
-- 修改表名 ALTER TABLE 表名 RENAME TO 新表名; -- 增加列 ALTER TABLE 表名 ADD COLUMNS (列名 数据类型); -- 修改列定义 ALTER TABLE 表名 CHANGE 列名 新列名 数据类型; -- 替换列 ALTER TABLE 表名 REPLACE COLUMNS (列名 数据类型, ...);其他
-- 查看有哪些表 show tables; show tables in 数据库名; show tables like 'de*'; -- 查看表信息 desc 表名; desc extended 表名; -- 详细 desc formatted 表名; -- 详细,格式好



