mysql中TRUNCATE AND DELETE有什么用

网友投稿 237 2023-12-05

mysql中TRUNCATE AND DELETE有什么用

这篇文章主要介绍了mysql中TRUNCATE AND DELETE有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

mysql中TRUNCATE AND DELETE有什么用

TRUNCATE TABLE和不带 WHERE DELETE功能是一样的,都是删除表中的所有数据,不过 TRUNCATE TABLE 速度更快,占用的日志更少,这是因为 TRUNCATE TABLE 直接释放数据页并且在事务日志中也只记录数据页的释放,而 DELETE 一行一行地删除,在事务日志中要记录每一条记录的删除。

那么可不可以用 TRUNCATE TABLE 代替不带 WHERE DELETE 呢?在以下情况是不行的:1、要保留标识的情况下不能用 TRUNCATE TABLE,因为 TRUNCATE TABLE 会重置标识。2、需要使用触发器的情况下不能使用TRUNCATE TABLE,它不会激发触发器。3、对于由 FOREIGN KEY 约束引用的表(即主键所在的表,不是外键所在的表)不能使用 TRUNCATE TABLE4、对于参与了索引视图的表不能使用TRUNCATE TABLE,注意指索引视图,并非普通视图。

感谢你能够认真阅读完这篇文章,希望小编分享的“mysql中TRUNCATE AND DELETE有什么用”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:利用Redis如何实现令牌桶算法
下一篇:MySQL中常用的查询子句有哪些
相关文章

 发表评论

暂时没有评论,来抢沙发吧~