Impala – 放下一张桌子
Impala – 放下一张桌子
Impala drop table语句用于删除Impala 中的现有表。此语句还会删除内部表的底层 HDFS 文件
注意– 使用此命令时必须小心,因为一旦表被删除,表中的所有可用信息也将永远丢失。
句法
以下是DROP TABLE语句的语法。这里,IF EXISTS是一个可选子句。如果我们使用这个子句,则删除具有给定名称的表,仅当它存在时。否则,将不执行任何操作。
DROP table database_name.table_name;
如果您尝试删除没有 IF EXISTS 子句时不存在的表,则会产生错误。您可以选择指定database_name和table_name。
例子
让我们首先验证数据库my_db中的表列表,如下所示。
[quickstart.cloudera:21000] > show tables; Query: show tables +------------+ | name | +------------+ | customers | | employee | | student | +------------+ Fetched 3 row(s) in 0.11s
从上面的结果可以观察到数据库my_db包含3张表
以下是drop table 语句的示例。在此示例中,我们将从数据库my_db中删除名为student的表。
[quickstart.cloudera:21000] > drop table if exists my_db.student;
执行上述查询时,将删除具有指定名称的表,并显示以下输出。
Query: drop table if exists student
确认
该节目表查询会在因帕拉当前数据库中的表的列表。因此,您可以使用Show Tables语句验证表是否被删除。
首先需要将上下文切换到所需表所在的数据库,如下图。
[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 浏览器创建数据库
打开 Impala 查询编辑器并在其中键入drop Table Statement。然后单击执行按钮,如下面的屏幕截图所示。
执行查询后,将光标轻轻移动到下拉菜单的顶部,您会发现一个刷新符号。如果单击刷新符号,将刷新数据库列表并将最近所做的更改应用于它。
确认
单击编辑器左侧标题DATABASE下的下拉菜单。在那里你可以看到一个数据库列表;选择数据库my_db如下所示。
在选择数据库my_db 时,您可以看到其中的表列表,如下所示。在这里您无法在列表中找到已删除的表学生,如下所示。