‘壹’ 在Mysql中还有一种方式可以删除表中的所有数据,需要用到什么关键字
使用truncate语句就可以删除表中所有数据。
truncate 语句的简单说明:
一般情况下,删除数据大家都在使用delete语句;
这个 truncate 命令很简单,它的意思是:删除表的所有记录;
相当于 delete 语句不写 where 子句一样;
其语法结构为:TRUNCATE [TABLE] tbl_name;
这里简单的给出个示例,我想删除 friends 表中所有的记录,可以使用如下语句:truncate table friends;
如果想要删除表的所有数据,truncate语句要比 delete 语句快。因为 truncate 删除了表,然后根据表结构重新建立它,而 delete 删除的是记录,并没有尝试去修改表;
不过truncate命令快规快,却不像delete命令那样对事务处理是安全的。因此,如果我们想要执行truncate删除的表正在进行事务处理,这个命令就会产生退出并产生错误信息。
删除的办法是执行truncat方法,只是不需要每次手动的输入truncate命令进行删除。
通过sql命令的方式生成所有的truncate语句并写入到.sql脚本文件中,然后执行脚本即可完成删除操作,并且保留了表结构。
生成truncate命令的sql语句为:
SELECTCONCAT('TRUNCATETABLE',TABLE_NAME,';')FROMinformation_schema.TABLESWHERETABLE_SCHEMA='test'intooutfile'/tmp/truncate_test.sql';。
然后将生成的.sql脚本拷贝到当前文件夹毕如下面:
mv/tmp/truncate_test.sql$current_dir/。
然后执行.sql脚本将数据库中所有表中数据删除:
source$current_dir/truncate_test.sql。
注意:
在进行select....intooutfile......操作时,默认只能将文件写入到tmp路径下,可以不用将tmp文件夹下面的.sql脚本移动到当前文件夹下,直接在tmp路径下执行.sql脚本即可。
(2)mysql如何删除表数据扩展阅读:
常见的删除数据库表中数据的方法是通过delete或者truncate的方法进行删除操作,如果删除的是表中某一条或者部分数据的话适合用delete操作进行删除,如果要删除表中所有的数据的话,适合是同truncate进行删除操作。
如果不需要保留数据库中所有表的结构,那么答案很简单,执行命令dropdatabase数据库名即可达到目的。
但是如果需要保留该数据库中所有表的结构,只想删除所有表中的数据,多执行老拆几次truncate可以达到。
参侍数枣考资料:网络-数据表