SQL – DROP 和 TRUNCATE

SQL DROP 和 TRUNCATE

DROP

DROP用于删除整个数据库或表。DROP语句会破坏现有数据库、表、索引或视图等对象。
SQL中的DROP语句从关系数据库管理系统(RDBMS)中删除组件。
语法:

DROP object object_name

示例:

DROP TABLE table_name;

table_name : 需要删除的表名.

DROP DATABASE database_name;

database_name : 需要删除的数据库名称

TRUNCATE

TRUNCATE语句是一种数据定义语言(DDL)操作,用于标记表的范围以进行重新分配(为空以便重用)。此操作的结果是快速从表中删除所有数据,通常绕过许多完整性强制机制。它在SQL:2008标准中正式引入。

TRUNCATE表mytable语句在逻辑上(尽管不是物理上)等同于从mytable语句中DELETE(没有WHERE子句)。

语法:

TRUNCATE TABLE  table_name;

table_name : 要被截断的表的名称.
DATABASE name – student_data

DROP 和 TRUNCATE 对比

  • Truncate通常速度非常快,非常适合从临时表中删除数据。
  • Truncate保留表的结构以备将来使用,不像drop table,在drop table中,表会连同它的完整结构一起删除。
  • 使用DROP语句删除表或数据库 cannot ,因此必须明智地使用它。

SQL DROP 和 TRUNCATE

SQL DROP 和 TRUNCATE

  • 删除整个数据库
DROP DATABASE student_data;     

运行上述查询后,整个数据库将被删除。

  • 从student_data数据库中截断Student_details表。
TRUNCATE TABLE Student_details;    

运行上述查询后,Student_details表将被截断,即数据将被删除,但该结构将保留在内存中进行进一步的操作。

参考:

  • https://en.wikipedia.org/wiki/Truncate_ (SQL)
  • https://en.wikipedia.org/wiki/Data_definition_language#DROP_statement

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程