MySQL DROP表
MYSQL使用Drop Table语句删除现有表。该语句从数据库中永久删除表的完整数据以及整个结构或定义。因此,删除表时必须非常小心,因为删除表后我们无法恢复丢失的数据。
语法
以下是删除表的语法MySQL中的表格:
mysql> DROP TABLE table_name;
OR,
mysql> DROP TABLE schema_name.table_name;
MySQL中DROP TABLE语句的完整语法为:
DROP [ TEMPORARY ] TABLE [ if EXISTS ] table_name [ RESTRICT | CASCADE ];
上面的语法使用了许多参数或参数。让我们详细讨论每个问题:
参数名称 |
说明 |
TEMPORARY |
这是一个可选参数,指定仅删除临时表。 |
table_name |
它指定了要从数据库中删除的表的名称。 |
IF EXISTS |
这是可选的,它与DROP TABLE语句一起使用,仅在数据库中存在表时才删除表。 |
RESTRICT和CASCADE |
两者都是可选参数,对此语句没有任何影响。它们包含在MySQL未来版本的语法中。 |
注意: 请注意,您必须具有DROP特权才能在MySQL中执行DROP TABLE语句。
示例
此示例指定如何从数据库中删除现有表。假设我们的数据库包含一个表" orders",如下图所示:
要删除上表,我们需要运行以下语句:
mysql> DROP TABLE orders;
它将永久删除该表。我们还可以检查该表是否存在,如以下输出所示:
如果我们尝试删除数据库中不存在的表,则会收到如下错误消息:
如果我们将IF EXISTS子句与DROP TABLE语句一起使用,MySQL会给出警告消息,该消息可以在以下输出中显示:
如何在Workbench中DROP表
1、要删除表,您需要选择表,右键单击它,然后选择"删除表"选项。出现以下屏幕:
2、在弹出窗口中选择
立即丢弃选项可立即从数据库中删除表。
MySQL DROP Multiple Table
有时我们想要从数据库中删除多个表。在这种情况下,我们必须使用表名并使用逗号运算符将它们分开。以下语句可用于删除多个表:
DROP TABLE if EXISTS table_name1, table_name2, table, ......., table_nameN;
MySQL TRUNCATE Table vs. DROP Table
您也可以使用DROP TABLE命令删除完整表,但是它将删除完整表数据和结构。如果必须存储一些数据,则需要再次重新创建表。但是对于TRUNCATE TABLE,它只删除表数据,而不删除结构。您无需再次创建表,因为表结构已经存在。