ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## hive数据库操作 * 上一节创建的hive数据库,实际上mysql中是没有的,而是在hdfs中存着。 * 具体可以在hadoop_hive库中的DBS表中查看到数据库的信息。 ![](https://img.kancloud.cn/76/4f/764fdda6e32d76691b2cb4a200c2ad04_792x63.png) * 可以看到在hdfs中存的位置。 ## 数据库操作 ### 1.1 查看数据列表 ~~~sql show databases; ~~~ [![](https://github.com/heibaiying/BigData-Notes/raw/master/pictures/hive-show-database.png)](https://github.com/heibaiying/BigData-Notes/blob/master/pictures/hive-show-database.png) ### 1.2 使用数据库 ~~~sql USE database_name; ~~~ ### 1.3 新建数据库 语法: ~~~sql CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name --DATABASE|SCHEMA 是等价的 [COMMENT database_comment] --数据库注释 [LOCATION hdfs_path] --存储在 HDFS 上的位置 [WITH DBPROPERTIES (property_name=property_value, ...)]; --指定额外属性 ~~~ 示例: ~~~sql CREATE DATABASE IF NOT EXISTS hive_test COMMENT 'hive database for test' WITH DBPROPERTIES ('create'='heibaiying'); ~~~ ### 1.4 查看数据库信息 语法: ~~~sql DESC DATABASE [EXTENDED] db_name; --EXTENDED 表示是否显示额外属性 ~~~ 示例: ~~~sql DESC DATABASE EXTENDED hive_test; ~~~ ### 1.5 删除数据库 语法: ~~~sql DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE]; ~~~ * 默认行为是 RESTRICT,如果数据库中存在表则删除失败。要想删除库及其中的表,可以使用 CASCADE 级联删除。 示例: ~~~sql DROP DATABASE IF EXISTS hive_test CASCADE; ~~~