首页 > 试题广场 >

有一个User用户表,现要删除整张表(指完全删除表数据和表结

[单选题]

有一个User用户表,现要删除整张表(指完全删除表数据和表结构),下面正确的MySQL语句是:

  • DELETE TABLE User;

  • DROP TABLE User;

  • TRUNCATE TABLE User;

  • DELETE FROM User ;

Truncate和Delete只删除数据,Drop则删除整个表(结构和数据)
发表于 2022-01-10 11:02:12 回复(1)
1.删除表:Drop TABLE 表名 if exists;
2.删除表中的数据:Delete from table 表名; 或者 Truncate table 表名;(后者效率高,因为前者是一条一条删除,后者是删除表结构后再创建一个一样结构的空表)

发表于 2022-04-13 14:18:14 回复(1)
TRUNCATE 和DELETE只删除数据, DROP则删除整个表(结构和数据)
TRUNCATE 只能对TABLE;DELETE可以是table和view
DELETE后可以添加条件
发表于 2022-03-18 17:03:31 回复(1)
Truncate Table 表名 和 Delete From 表名 只删除表内容,Drop Table 表名 删除表结构和表内容
编辑于 2023-12-13 22:54:38 回复(0)

  1. Truncate(清空表):

    • Truncate命令用于快速清空表中的所有数据,但保留表的结构。
    • Truncate操作是非事务性的,不能回滚。
    • Truncate操作不会触发表上的触发器。
    • Truncate操作的执行速度较快,因为它是通过直接删除表中的数据页来实现的,而不是一条一条地删除记录。
    • Truncate操作将重置表的自增长计数器。
  2. Delete(删除数据):

    • Delete命令用于删除表中的一条或多条记录。
    • Delete操作是事务性的,可以回滚。
    • Delete操作将触发表上的触发器。
    • Delete操作的执行速度较慢,因为它会一条一条地删除记录,并且会生成事务日志。
  3. Drop(删除表):

    • Drop命令用于删除整个表,包括表的结构和数据。
    • Drop操作是事务性的,可以回滚(在某些情况下,如启用了回收站,可以恢复被删除的表)。
    • Drop操作将删除表及其所有相关对象(如索引、触发器、约束等)。
    • Drop操作不会触发表上的触发器。
    • Drop操作无法恢复,一旦执行了Drop命令,表将永久丢失。

  • 总结:

    • Truncate用于快速清空表中的数据,保留表结构,速度快,非事务性,无法回滚。
    • Delete用于删除表中的记录,保留表结构,速度较慢,事务性,可以回滚。
    • Drop用于删除整个表,包括表的结构和数据,无法恢复,事务性,可以回滚(在某些情况下)。

    选择使用哪个命令取决于你的需求和操作的目标。如果只是清空表的数据,可以使用Truncate。如果需要删除特定的记录,可以使用Delete。如果要彻底删除整个表,包括结构和数据,可以使用Drop。

发表于 2023-07-06 16:57:37 回复(0)
Truncate和Delete只删除数据,Drop则删除整个表(结构和数据)
发表于 2023-04-11 09:20:06 回复(0)
delete 可以精确删除,只删除表的数据,不会删除结构。
truncate 能删除表的数据,也能删除表的结构
drop 完全删除表
格式:Drop TABLE 表名 
Delete from table 表名;
Truncate table 表名
发表于 2022-06-08 10:31:13 回复(0)
TRUNCATE是删掉重新创建
发表于 2023-04-07 23:18:08 回复(0)