【大数据入门 | Hive】DDL数据定义语言(数据库DataBase)

1. 数据库(DataBase)

1.1 创建数据库

语法:

sql 复制代码
CREATE DATABASE [IF NOT EXISTS] database_name
[COMMENT database_comment]
[LOCATION hdfs_path]
[WITH DBPROPERTIES (property_name=property_value, ...)];

案例:

(1)创建一个数据库,不指定路径

sql 复制代码
hive (default)> create database db_hive1;

注:若不指定路径,其默认路径为${hive.metastore.warehouse.dir}/database_name.db

(2)创建一个数据库,指定路径

sql 复制代码
hive (default)> create database db_hive2 location '/db_hive2';

(2)创建一个数据库,带有dbproperties

sql 复制代码
hive (default)> create database db_hive3 with dbproperties('create_date'='2022-11-18');

2. 查询数据库

2.1 展示所有数据库

(1)语法

sql 复制代码
SHOW DATABASES [LIKE 'identifier_with_wildcards'];

注:like通配表达式说明:*表示任意个任意字符,|表示或的关系。

(2)案例

sql 复制代码
hive> show databases like 'db_hive*';

OK

db_hive_1

db_hive_2

2 )查看数据库信息

(1)语法

sql 复制代码
DESCRIBE DATABASE [EXTENDED] db_name;

(2)案例

1查看基本信息

sql 复制代码
hive> desc database db_hive3;

OK

db_hive hdfs://hadoop102:8020/user/hive/warehouse/db_hive.db atguigu USER

2查看更多信息

sql 复制代码
hive> desc database extended db_hive3;

OK

db_name comment location owner_name owner_type parameters

db_hive3 hdfs://hadoop102:8020/user/hive/warehouse/db_hive3.db atguigu USER {create_date=2022-11-18}

3. 修改数据库

用户可以使用alter database命令修改数据库某些信息,其中能够修改的信息包括dbproperties、location、owner user。

需要注意的是:修改数据库location,不会改变当前已有表的路径信息,而只是改变后续创建的新表的默认的父目录。

1 )语法

sql 复制代码
--修改dbproperties

ALTER DATABASE database_name SET DBPROPERTIES (property_name=property_value, ...);



--修改location

ALTER DATABASE database_name SET LOCATION hdfs_path;



--修改owner user

ALTER DATABASE database_name SET OWNER USER user_name;

2 案例

(1) 修改 dbproperties

sql 复制代码
hive> ALTER DATABASE db_hive3 SET DBPROPERTIES ('create_date'='2022-11-20');

4. 删除数据库

1) 语法

sql 复制代码
DROP DATABASE [IF EXISTS] database_name [RESTRICT|CASCADE];

注:RESTRICT:严格模式,若数据库不为空,则会删除失败,默认为该模式。

CASCADE:级联模式,若数据库不为空,则会将库中的表一并删除。

2)案例

(1)删除空数据库

sql 复制代码
hive> drop database db_hive2;

(2) 删除非空数据库

sql 复制代码
hive> drop database db_hive3 cascade;

5. 切换当前数据库

1) 语法

sql 复制代码
USE database_name;
相关推荐
喂完待续19 分钟前
Apache Hudi:数据湖的实时革命
大数据·数据仓库·分布式·架构·apache·数据库架构
计艺回忆路2 小时前
从Podman开始一步步构建Hadoop开发集群
hadoop
计算机源码社1 天前
分享一个基于Hadoop的二手房销售签约数据分析与可视化系统,基于Python可视化的二手房销售数据分析平台
大数据·hadoop·python·数据分析·毕业设计项目·毕业设计源码·计算机毕设选题
计算机毕设残哥1 天前
完整技术栈分享:基于Hadoop+Spark的在线教育投融资大数据可视化分析系统
大数据·hadoop·python·信息可视化·spark·计算机毕设·计算机毕业设计
计算机源码社2 天前
分享一个基于Hadoop+spark的超市销售数据分析与可视化系统,超市顾客消费行为分析系统的设计与实现
大数据·hadoop·数据分析·spark·计算机毕业设计源码·计算机毕设选题·大数据选题推荐
beijingliushao2 天前
33-Hive SQL DML语法之查询数据-2
hive·hadoop·sql
Lx3522 天前
如何正确选择Hadoop数据压缩格式:Gzip vs LZO vs Snappy
大数据·hadoop
让头发掉下来2 天前
Hive 创建事务表的方法
大数据·hive·hadoop
Q_Q19632884752 天前
python基于Hadoop的超市数据分析系统
开发语言·hadoop·spring boot·python·django·flask·node.js
计算机毕业设计木哥2 天前
计算机毕设大数据选题推荐 基于spark+Hadoop+python的贵州茅台股票数据分析系统【源码+文档+调试】
大数据·hadoop·python·计算机网络·spark·课程设计