mysql清空数据库所有表 mysql 怎样清空一个数据库中的所有表
其实mysql清空数据库所有表的问题并不复杂,但是又很多的朋友都不太了解mysql 怎样清空一个数据库中的所有表,因此呢,今天小编就来为大家分享mysql清空数据库所有表的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
数据库怎么清空一个表中所有数据
有两种办法可以删除表中的所有数据:
TRUNCATE TABLE删除表中的所有行,而不记录单个行删除操作。;语法 TRUNCATE TABLE name参数 name是要截断的表的名称或要删除其全部行的表的名称。
Delete from tablename where 1=1
方法1:重建库和表:
一、只导出表结构:
导出整个数据库结构(不包含数据):mysqlmp-h localhost-uroot-p123456-d database>mp.sql
导出单个数据表结构(不包含数据):mysqlmp-h localhost-uroot-p123456-d database table>mp.sql
二、只导出表数据:
导出整个数据库数据:mysqlmp-h localhost-uroot-p123456-t database>mp.sql
三、导出结构数据
导出整个数据库结构和数据:mysqlmp-h localhost-uroot-p123456 database>mp.sql
导出单个数据表结构和数据:mysqlmp-h localhost-uroot-p123456database table>mp.sql
mysql 怎样清空一个数据库中的所有表
方法1:重建库和表
一。只导出表结构
导出整个数据库结构(不包含数据)
mysqldump-h localhost-uroot-p123456-d database> dump.sql
导出单个数据表结构(不包含数据)
mysqldump-h localhost-uroot-p123456-d database table> dump.sql
二。只导出表数据
导出整个数据库数据
mysqldump-h localhost-uroot-p123456-t database> dump.sql
三。导出结构+数据
导出整个数据库结构和数据
mysqldump-h localhost-uroot-p123456 database> dump.sql
导出单个数据表结构和数据
mysqldump-h localhost-uroot-p123456 database table> dump.sql
方法2:生成清空所有表的SQL
mysql-N-s information_schema-e"SELECT CONCAT('TRUNCATE TABLE',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'"
输出结果如下:
TRUNCATE TABLE AUTHGROUPBINDINGS;
TRUNCATE TABLE AUTHGROUPS;
TRUNCATE TABLE AUTHUSERS;
TRUNCATE TABLE CORPBADCUSTOMINFO;
TRUNCATE TABLE CORPSMSBLACKLISYInfo;
TRUNCATE TABLE CORPSMSFILTERINFO;
TRUNCATE TABLE CORPSMSINFO;
TRUNCATE TABLE EABASEREGINFOS;
TRUNCATE TABLE EACORPBLOB;
TRUNCATE TABLE EACORPINFO;
....
....
这样就更完善了:
mysql-N-s information_schema-e"SELECT CONCAT('TRUNCATE TABLE',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'"| mysql eab12
即清空eab12中所有的表。
但是如果有外键的话,很可能会报错。因此还需要加个-f
mysql-N-s information_schema-e"SELECT CONCAT('TRUNCATE TABLE',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'"| mysql-f eab12
多执行几次,直到不报错。
以上就是Mysql清空表的实现方法。
mysql如何清空表
mysql有两种方式可以清空表。分别为:delete from表名和truncate table表名。
delete from表名,删除表数据,全部删除则是可以清空表,相当于一条条删除,需要注意的是,如果有字段是自增的(一般为id),这样删除后,id值还是存在的。举例来说,就是加入你在删除之前最大的id为100,你用这种方式清空表后,新插入一条数据其id为101,而不是1。
2.truncate table表名,直接清空表,相当于重建表,保持了原表的结构,id也会清空。相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。
mysql怎样清空一个数据库中的所有表_MySQL
转载自:http://blog.csdn.net/zhangzhizhen1988/article/details/8432146
Mysql清空表是很重要的操作,也是最常见的操作之一,下面就为您详细介绍Mysql清空表的实现方法,希望能够对您有所帮助。
方法1:重建库和表
一。只导出表结构
导出整个数据库结构(不包含数据)
mysqldump-h localhost-uroot-p123456-d database>dump.sql
导出单个数据表结构(不包含数据)
mysqldump-h localhost-uroot-p123456-d database table>dump.sql
二。只导出表数据
导出整个数据库数据
mysqldump-h localhost-uroot-p123456-t database>dump.sql
三。导出结构+数据
导出整个数据库结构和数据
mysqldump-h localhost-uroot-p123456 database>dump.sql
导出单个数据表结构和数据
mysqldump-h localhost-uroot-p123456 database table>dump.sql
方法2:生成清空所有表的SQL
mysql-N-s information_schema-e"SELECT CONCAT('TRUNCATE TABLE',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'"
输出结果如下:
TRUNCATE TABLE AUTHGROUPBINDINGS;
TRUNCATE TABLE AUTHGROUPS;
TRUNCATE TABLE AUTHUSERS;
TRUNCATE TABLE CORPBADCUSTOMINFO;
TRUNCATE TABLE CORPSMSBLACKLISYInfo;
TRUNCATE TABLE CORPSMSFILTERINFO;
TRUNCATE TABLE CORPSMSINFO;
TRUNCATE TABLE EABASEREGINFOS;
TRUNCATE TABLE EACORPBLOB;
TRUNCATE TABLE EACORPINFO;
....
....
这样就更完善了:
mysql-N-s information_schema-e"SELECT CONCAT('TRUNCATE TABLE',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'"| mysql eab12
即清空eab12中所有的表。
但是如果有外键的话,很可能会报错。因此还需要加个-f
mysql-N-s information_schema-e"SELECT CONCAT('TRUNCATE TABLE',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'"| mysql-f eab12
多执行几次,直到不报错。
关于mysql清空数据库所有表到此分享完毕,希望能帮助到您。