删除全表数据sql

sql 复制代码
-- 删除 `employees` 表中的所有数据
DELETE FROM employees;

-- 清空 `employees` 表中的所有数据
TRUNCATE TABLE employees;

TRUNCATE 操作不记录每一行的删除操作,而是直接释放数据页,所以执行速度通常比 DELETE 快。不过它不能和 WHERE 子句一起使用,只能删除全量数据。

两者对比总结

速度:TRUNCATE 通常比 DELETE 快,因为 TRUNCATE 不记录每行的删除操作。

事务处理:DELETE 操作可以回滚,因为它会记录到事务日志;TRUNCATE 操作通常不能回滚,因为它不记录每行的删除操作。

约束影响:DELETE 操作不会影响表的自动递增计数器;TRUNCATE 操作会重置自动递增计数器。

相关推荐
繁华落尽,寻一世真情3 分钟前
【基于 AI 的智能小说创作助手】MuMuAINovel-sqlite 基于 AI 的智能小说创作助手
数据库·人工智能·sqlite
TOPGO智能8 分钟前
在腾讯CloudStudio上成功部署Moltbot接入飞书
数据库
云边有个稻草人10 分钟前
关系数据库替换用金仓:数据迁移过程中的完整性与一致性风险
数据库·国产数据库·kingbasees·金仓数据库·关系数据库替换用金仓
星辰_mya10 分钟前
Es之只读
数据库
Tangcan-16 分钟前
【Redis】通用命令 1
数据库·redis·缓存
MSTcheng.20 分钟前
【C++】C++异常
java·数据库·c++·异常
草莓熊Lotso1 小时前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
大模型玩家七七1 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
岳麓丹枫0012 小时前
PostgreSQL 中 pg_wal 目录里的 .ready .done .history 文件的生命周期
数据库·postgresql
陌上丨8 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存