MySQL中delete、truncate和drop的作用及适用场景

    科技2024-12-05  43

    Delete:用来删除表的全部或者一部分数据行。执行delete之后,用户需要提交(commmit)或者回滚(rollback)来执行删除或者撤销删除, delete命令会触发这个表上所有的delete触发器;

    Truncate删除表中的所有数据。这个操作不能回滚,也不会触发这个表上的触发器,TRUNCATE比delete更快,占用的空间更小;

    Drop命令从数据库中删除表,所有的数据行,索引和权限也会被删除,所有的DML触发器也不会被触发,这个命令也不能回滚。

    应用场景

    delete: 在想删除部分数据行时候truncate: 在保留表而删除所有数据的时候用truncatedrop: 在不再需要一张表的时候
    Processed: 0.010, SQL: 8