hive資料庫表的操作
一、 建立資料庫
1. create database語句
hive資料庫是乙個命名空間或標的集合。
語法:
craete database | schema [if notexists]
2. 建立資料庫:
3. 檢視是否建立成功:
二、 檢視資料庫資訊
1. 檢視資料庫的描述資訊和檔案目錄位置路徑資訊
2. 檢視資料庫的描述資訊和檔案目錄位置路徑資訊(加上資料庫鍵值對的屬性資訊)。
三、 刪除資料庫
1. 普通刪除資料庫
檢視是否刪除成功:
2. 級聯刪除資料庫。
dropdatabase if exists simontest1 cascade;
當資料庫還有表時,先級聯刪除表後再刪除資料庫,預設是restrict。
建立兩個database:
級聯刪除simontest2:
檢視是否刪除成功:
四、 修改資料庫
修改資料庫只能修改資料庫的鍵值對屬性值。資料庫名和資料庫所在的目錄位置不能修改。
alter database simontest1 setdmproperties('edited-by'='guojiawei');
建立時,沒有建立鍵值對屬性值,暫時不能修改。
五、 建立表
1.建立表
create table if not existssimontest1.table1(name string comment 'mingzi',salary float comment 'gongzi')comment 'zhe shi yi zhang ce shi biao' tblproperties('creator'='simon','created_at'='2017-10-26 15:56:33');
--其中tblproperties作用:按照鍵值對的格式為表增加額外的文件說明,也可用來表示資料庫連線的必要的元資料資訊
--hive
會自動增加二個表屬性:last_modified_by(最後修改表的使用者名稱),last_modified_time(最後一次修改的時間)
2.檢視和列舉表的tblproperties
屬性資訊:
show tblproperties simontest1.table1;
3.
使用like
建立表。
拷貝表結構,無需拷貝資料
create table if not exists simontest1.table2 like simontest1.table1;
4.
檢視表的詳細資訊
1)
結構資訊
extended
describe extended simontest1.table1;
2)
更多資訊
formatted
describe formatted simontest1.table1;
六、
建立外部表
1.
應用場景:
如果資料被多個工具(如
pig等)共享,可以建立外部表。
2.
特點:刪除表時,表的元資料會被刪除掉,但是資料不會被刪除。
3.
建立語句:
create external table if not exists simontest1.table3(name string comment'mingzi',salary float comment 'gongzi') comment 'zhe shi yi zhang ce shibiao' tblproperties('creator'='simon','created_at'='2017-10-26 15:56:33');
七、
建立分割槽表
1.
建表語句
create table if not existssimontest1.table4(name string comment 'mingzi',salary float comment 'gongzi')comment 'zhe shi yi zhang ce shi biao' partitioned by(countrystring,state string) stored as rcfile tblproperties('creator'='simon','created_at'='2017-10-2616:37:33');
2.
檢視表中所有分割槽
show partitions simontest1.table4;
3.
檢視表中特定分割槽
show partitions simontest1.table4 partition(country=』us』);
八、 刪除表
droptable if exists simontest1.table4;
Hive的資料庫和表操作
一 hive資料庫操作 1.1 檢視資料庫 show databases 使用like關鍵字模糊匹配 顯示包含db 字首的資料庫名稱 show databases like db 1.2 使用資料庫 use database名稱1.3 建立資料庫 create database dbname 通過l...
HIVE 資料庫臨時表
hive從0.14.0開始提供建立臨時表的功能,表只對當前session有效,session退出後,表自動刪除。語法 create temporary table 注意點 1 如果建立的臨時表表名已存在,那麼當前session引用到該錶名時實際用的是臨時表,只有drop或rename臨時表名才能使用...
Hive刪除包含表的資料庫
當我們這樣子刪除乙個包含表的資料庫時,會顯示失敗 hive drop database hive failed execution error,return code 1 from org.apache.hadoop.hive.ql.exec.ddltask.invalidoperationexce...