当前位置: 首页 > news >正文

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

1. 数据库(DataBase)

1.1 创建数据库

语法:

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

案例:

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

hive (default)> create database db_hive1;

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

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

hive (default)> create database db_hive2 location '/db_hive2';

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

hive (default)> create database db_hive3 with dbproperties('create_date'='2022-11-18');

2. 查询数据库

2.1 展示所有数据库

(1)语法

SHOW DATABASES [LIKE 'identifier_with_wildcards'];

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

(2)案例

hive> show databases like 'db_hive*';OKdb_hive_1db_hive_2

2)查看数据库信息

(1)语法

DESCRIBE DATABASE [EXTENDED] db_name;

(2)案例

1查看基本信息

hive> desc database db_hive3;OKdb_hive hdfs://hadoop102:8020/user/hive/warehouse/db_hive.db atguigu USER

2查看更多信息

hive> desc database extended db_hive3;OKdb_name comment location owner_name owner_type parametersdb_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)语法

--修改dbpropertiesALTER DATABASE database_name SET DBPROPERTIES (property_name=property_value, ...);--修改locationALTER DATABASE database_name SET LOCATION hdfs_path;--修改owner userALTER DATABASE database_name SET OWNER USER user_name;

2案例

(1)修改dbproperties

hive> ALTER DATABASE db_hive3 SET DBPROPERTIES ('create_date'='2022-11-20');

4. 删除数据库

1)语法

DROP DATABASE [IF EXISTS] database_name [RESTRICT|CASCADE];

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

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

2)案例

(1)删除空数据库

hive> drop database db_hive2;

(2)删除非空数据库

hive> drop database db_hive3 cascade;

5. 切换当前数据库

1)语法

USE database_name;


http://www.mrgr.cn/news/35412.html

相关文章:

  • Q必达任务脚本
  • asp.net core日志与异常处理小结
  • vue3开发中易遗漏的常见知识点
  • MySQL 中存储过程参数的设置与使用
  • 代码随想录Day 53|题目:110. 字符串接龙、105.有向图的完全可达性、106. 岛屿的周长
  • Linux下搭建iSCSI共享存储-Tgt
  • 【2024W36】肖恩技术周刊(第 14 期):什么是完美副业?
  • 二叉树进阶oj题【二叉树相关10道oj题的解析和代码实现】
  • 00DSP学习-F28379D学习准备(了解一个工程的构成)
  • 傅里叶变换及其应用笔记
  • JavaScript --json格式字符串和对象的转化
  • PHPStorm如何调整字体大小
  • 在Markdown中实现内部查询
  • DataWhale X 南瓜书学习笔记 task03笔记
  • Vue.js 中,@click 和 @click.stop的区别
  • C++ 线程睡眠(阻塞)
  • 游戏化在电子课程中的作用:提高参与度和学习成果
  • Ubuntu一些文件及问题研究分析
  • 解决:sudo apt install catkin的报错问题。
  • canvas练习画太阳花