Hive之資料庫建立 查詢 刪除

2022-08-22 06:42:11 字數 1799 閱讀 1807

入門寫法:

hive (default)> create database test;

注:這個資料庫的預設在hdfs上的儲存路徑是/user/hive/warehouse/*.db

位置配置:hive.metastore.warehouse.dir(例如,/user/hive/warehouse)所定義的目錄的子目錄下

hive (default)> create database if not exists test;

顯示所有

hive (default)> show databases;

模糊匹配

hive> show databases like 'test*';

oktest_hive

test_hive_1

顯示資料庫資訊
hive> desc database test;

oktest hdfs://hadoop02:9000/user/hive/warehouse/test.db test user

顯示資料庫詳細資訊,extended
hive> desc database extended test;

oktest hdfs://hadoop02:9000/user/hive/warehouse/test.db test user

切換當前資料庫

hive (default)> use test;

注:資料庫的其他元資料資訊都是不可更改的,包括資料庫名和資料庫所在的目錄位置;使用者可以使用alter database命令為某個資料庫的dbproperties設定鍵-值對屬性值,來描述這個資料庫的屬性資訊。

hive (default)> alter database test set dbproperties('createtime'='20190930');

在hive中檢視修改結果

hive> desc database extended test;

db_name comment location owner_name owner_type parameters

test hdfs://hadoop02:8020/user/hive/warehouse/test.db test user

刪除空資料庫

hive>drop database test;

如果刪除的資料庫不存在,最好採用 if exists判斷資料庫是否存在,否則匯報異常

hive> drop database test;

failed: semanticexception [error 10072]: database does not exist: test

hive> drop database if exists test;

如果資料庫不為空,可以採用cascade命令,強制刪除
hive> drop database test;

failed: execution error, return code 1 from org.apache.hadoop.hive.ql.exec.ddltask. invalidoperationexception(message:database testis not empty. one or more tables exist.)

hive> drop database test cascade;

hive建立資料庫

hive建立資料庫create database if not exists sip data drc comment 測試資料庫 location tmp hive root with dbproperties creater liuzd date 20191010 if not exists 如...

Hive建立 刪除 修改 使用資料庫

create database schema if not exists database name comment database comment location hdfs path with dbproperties property name property value,schema和d...

hive刪除資料庫

hive刪除資料庫 drop database是刪除所有的表並刪除資料庫的語句。它的語法如下 drop database statementdrop database schema if exists database name restrict cascade 下面的查詢用於刪除資料庫。假設要刪除...