加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

SQL命令delete和truncate之间有什么区别

发布时间:2022-03-10 13:21:37 所属栏目:MySql教程 来源:互联网
导读:这篇文章主要介绍SQL命令delete和truncate之间有哪些区别,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 在SQL中delete和truncate命令都可用于删除数据(记录),那么它们之间有什么区别? 也可以删除student表中的特定记录: d
       这篇文章主要介绍SQL命令delete和truncate之间有哪些区别,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
 
       在SQL中delete和truncate命令都可用于删除数据(记录),那么它们之间有什么区别?
 
也可以删除student表中的特定记录:
 
      delete from student where student_id =2;
      上面的SQL命令将删除student_id为2的记录。执行该语句后,表中将只包含两条记录:student_id为1和3的记录。
 
什么是truncate命令?
 
truncate命令有助于从表中删除所有记录。它还从数据库中删除表结构。因此,在特定表上执行truncate命令时,它还会初始化主键。
 
以下SQL命令将删除student表中的所有记录。此外,它从数据库中删除表结构。
 
truncate table student;
delete和truncate命令之间的区别是什么?
 
1、命令类型
 
delete是数据操作语言(DML)命令;而truncate是数据定义语言(DDL)命令。
 
2、功能
 
delete命令根据指定的SQL语句从表中删除单个,多个或所有记录;而truncate命令从数据库中删除所有记录和表结构。
 
3、Where子句
 
delete命令支持WHERE子句,可以使用带有DELETE的where子句来过滤和删除特定记录;而,truncate命令不支持WHERE子句。
 
4、锁定
 
delete命令采用行级锁定,表中的每一行都被锁定以进行删除;truncate命令采用表级锁定,锁定了整个表以删除所有记录。
 
5、 事务空间
 
delete命令比truncate命令使用更多的事务空间。
SQL命令delete和truncate之间有什么区别

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读