Delete和Truncate有什么区别?
Delete和Truncate之间的区别是
删除 | 截短 |
Delete语句用于从表中删除行。可以回滚。 | Truncate语句用于删除表中的所有行并释放包含表的空间。它不能回滚。 |
我们可以在DELETE语句中使用WHERE条件,并可以删除所需的行 | 我们不能在TRUNCATE语句中使用WHERE条件。因此,我们不能仅删除必需的行 |
我们可以使用DELETE删除特定的行 | 我们只能使用TRUNCATE一次删除所有行 |
删除是DML命令 | 截断是DDL命令 |
删除维护日志,并且性能比截断慢 | 截断可最大限度地减少日志并提高性能 |
我们需要对Table具有DELETE权限才能使用DELETE命令 | 我们至少需要对表具有ALTER权限才能使用TRUNCATE命令 |
个人简介
我是一名测试兼开发工程师,目前25K,目前做的是无人驾驶,欢迎和大家一起交流开发测试技术,一起高薪就业,我们还有一起打妖怪的群哦,还有面试题小程序哦!