MySql使用存储过程清除数据库所有表数据,保存数据结构

Posted lovemj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySql使用存储过程清除数据库所有表数据,保存数据结构相关的知识,希望对你有一定的参考价值。

BEGIN
DECLARE strClear VARCHAR(256);
DECLARE done INT DEFAULT 0;
#定义游标
DECLARE curOne CURSOR FOR select concat(‘truncate table ‘,table_name,‘;‘) from information_schema.TABLES where table_schema=‘test‘;
#绑定控制变量到游标,游标循环结束自动转为True
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
#打开游标
OPEN curOne;
REPEAT
FETCH curOne INTO strClear;
#SELECT strClear;
#动态执行SQL语句
SET @mysql = strClear;
PREPARE stmt from @mysql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

UNTIL done = 1 END REPEAT;

#关闭游标
CLOSE curOne;
END



















以上是关于MySql使用存储过程清除数据库所有表数据,保存数据结构的主要内容,如果未能解决你的问题,请参考以下文章

关于mysql存储过程创建动态表名及參数处理

MySQL 查询所有存储过程视图 等等

MySQL 存储过程,获取使用游标查询的结果集

如何在存储过程中直接使用另一个存储过程返回的数据集

mysql为四个表创建储存过程或者储存函数

使用存储过程将自动日期字段添加到 MYSQL 数据库