TRUNCATE
truncate `table_name`
直接清空表格,速度快。
不写服务器log,效率高。
不激活trigger(触发器),但是会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。
DELETE
delete from `table_name `
delete from `table_name ` where `condition_sql`
逐条删除,速度慢。
写服务器log,效率低。
激活trigger(触发器),但不会重置Identity,即Identity依旧是接着被删除的最近的那一条记录ID加1后进行记录。
如果只需删除表中的部分记录,只能使用DELETE语句配合where条件。(如上代码段所示)
清空所有表:
select CONCAT('truncate TABLE ',table_schema,'.',TABLE_NAME, ';') from INFORMATION_SCHEMA.TABLES where table_schema in ('msyserver');
生成清空所有表语句,然后将结果粘贴到命令行运行。
https://blog.csdn.net/qq_36838191/article/details/85758654
https://blog.csdn.net/iw1210/article/details/79586033