impala 刪除表

2018-01-03 17:09 更新

Impala drop table語(yǔ)句用于刪除Impala中的現(xiàn)有表。 此語(yǔ)句還會(huì)刪除內(nèi)部表的底層HDFS文件

注意 - 使用此命令時(shí)必須小心,因?yàn)閯h除表后,表中可用的所有信息也將永遠(yuǎn)丟失。

語(yǔ)法

以下是DROP TABLE語(yǔ)句的語(yǔ)法。 這里,IF EXISTS是一個(gè)可選子句。 如果我們使用此子句,則會(huì)刪除具有給定名稱的表,只要它存在。 否則,不會(huì)執(zhí)行任何操作。

DROP table database_name.table_name;

如果嘗試刪除不存在IF EXISTS子句的表,將會(huì)生成錯(cuò)誤。 (可選)您可以指定database_name和table_name。

讓我們首先驗(yàn)證數(shù)據(jù)庫(kù)my_db中的表的列表,如下所示。

[quickstart.cloudera:21000] > show tables;

Query: show tables 
+------------+ 
| name       | 
+------------+ 
| customers  | 
| employee   | 
| student    | 
+------------+ 
Fetched 3 row(s) in 0.11s

從上面的結(jié)果可以看出,數(shù)據(jù)庫(kù)my_db包含3個(gè)表

下面是drop table語(yǔ)句的示例。 在本例中,我們從數(shù)據(jù)庫(kù)my_db中刪除名為student的表。

[quickstart.cloudera:21000] > drop table if exists my_db.student;

執(zhí)行上述查詢時(shí),將刪除具有指定名稱的表,并顯示以下輸出。

Query: drop table if exists student

驗(yàn)證

show Tables查詢提供Impala中當(dāng)前數(shù)據(jù)庫(kù)中的表的列表。 因此,可以使用Show Tables語(yǔ)句驗(yàn)證是否刪除了表。

首先,您需要將上下文切換到所需表所在的數(shù)據(jù)庫(kù),如下所示。

[quickstart.cloudera:21000] > use my_db; 
Query: use my_db

然后,如果使用show tables查詢獲取表的列表,可以觀察名為student的表不在列表中。

[quickstart.cloudera:21000] > show tables; 

Query: show tables 
+-----------+ 
| name      | 
+-----------+ 
| customers | 
| employee  | 
| student   | 
+-----------+ 
Fetched 3 row(s) in 0.11s

使用Hue瀏覽器創(chuàng)建數(shù)據(jù)庫(kù)

打開Impala查詢編輯器并在其中鍵入drop表語(yǔ)句。 然后單擊執(zhí)行按鈕,如下面的屏幕截圖所示。

創(chuàng)建數(shù)據(jù)庫(kù)

執(zhí)行查詢后,輕輕將光標(biāo)移動(dòng)到下拉菜單的頂部,您會(huì)發(fā)現(xiàn)一個(gè)刷新符號(hào)。 如果單擊刷新符號(hào),將刷新數(shù)據(jù)庫(kù)列表,并對(duì)其應(yīng)用最近所做的更改。

創(chuàng)建數(shù)據(jù)庫(kù)下拉

驗(yàn)證

單擊編輯器左側(cè)標(biāo)題DATABASE下的下拉菜單。 在那里你可以看到一個(gè)數(shù)據(jù)庫(kù)列表; 選擇數(shù)據(jù)庫(kù)my_db,如下所示。

創(chuàng)建數(shù)據(jù)庫(kù)驗(yàn)證

在選擇數(shù)據(jù)庫(kù)my_db時(shí),可以看到其中的表列表,如下所示。 在這里,您不能在列表中找到已刪除的表學(xué)生,如下所示。

創(chuàng)建數(shù)據(jù)庫(kù)我的數(shù)據(jù)庫(kù)
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)