HiveQL之Database相关操作
1、Create Database(創(chuàng)建數(shù)據(jù)庫(kù)語(yǔ)法)
| CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name [COMMENT database_comment] [LOCATION hdfs_path] [WITH DBPROPERTIES (property_name=property_value, ...)]; |
使用database和schema意義是一樣的。IF NOT EXISTS可以增強(qiáng)了程序的健壯性,create database時(shí)可以通過(guò)comment命令為數(shù)據(jù)庫(kù)添加注釋,同時(shí)也可以通過(guò)location為數(shù)據(jù)庫(kù)指定存儲(chǔ)路徑,默認(rèn)數(shù)據(jù)庫(kù)路徑創(chuàng)建在hive warehouse目錄下。
2、Drop Database(刪除數(shù)據(jù)庫(kù)語(yǔ)法)
| DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE]; |
使用database和schema意義是一樣的。IF EXISTS可以增強(qiáng)了程序的健壯性,restrict(限制)表示數(shù)據(jù)庫(kù)默認(rèn)是限制刪除的,一般體現(xiàn)在數(shù)據(jù)庫(kù)下有表等對(duì)象時(shí),要想刪除數(shù)據(jù)庫(kù)需要先刪除數(shù)據(jù)庫(kù)下的對(duì)象,否則可以使用cascade關(guān)鍵字級(jí)聯(lián)刪除數(shù)據(jù)庫(kù)及其對(duì)象信息。
3、Alter Database(修改數(shù)據(jù)庫(kù)語(yǔ)法)
| ALTER (DATABASE|SCHEMA) database_name SET DBPROPERTIES (property_name=property_value, ...);? ALTER (DATABASE|SCHEMA) database_name SET OWNER [USER|ROLE] user_or_role;?? |
修改數(shù)據(jù)庫(kù)在生產(chǎn)環(huán)境中一般意義不大。
4、Use Database(使用數(shù)據(jù)庫(kù))
| USE database_name; USE DEFAULT; SELECT current_database(); |
切換到某數(shù)據(jù)庫(kù)下,通常進(jìn)行數(shù)據(jù)庫(kù)切換時(shí)使用,一般程序SQL中可以通過(guò)db.schema的方式進(jìn)行編碼,這樣在寫(xiě)腳本時(shí)可以不考慮使用use命令。
SELECT current_database();表示查看當(dāng)前連接數(shù)據(jù)庫(kù)對(duì)象。
總結(jié)
以上是生活随笔為你收集整理的HiveQL之Database相关操作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 《编程珠玑(第2版•修订版)》—第2章2
- 下一篇: 《Selenium自动化测试指南》—第1