一键清空数据库所有表数据
一键清空数据库所有表数据
Eureka_尤里卡 发表于9个月前
一键清空数据库所有表数据
  • 发表于 9个月前
  • 阅读 3
  • 收藏 0
  • 点赞 0
  • 评论 0

【腾讯云】新注册用户域名抢购1元起>>>   


第一种  

SELECT concat('truncate table ',TABLE_NAME,' ;') FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA ='buyer';

把生成的sql全部执行即可。

第二种

call test();

创建存储过程,然后调用一下即可,一下是mysql存储过程

DELIMITER $$

USE `buyer`$$

DROP PROCEDURE IF EXISTS `test`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `test`()
BEGIN
DECLARE done INT DEFAULT 0;
    DECLARE a VARCHAR(200) DEFAULT '';
    DECLARE mycursor CURSOR FOR SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA ='buyer';
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;
    OPEN mycursor;
    REPEAT 
        FETCH mycursor INTO a;
        IF NOT done THEN
        SET @v_sql := CONCAT('truncate table ',a) ;
        PREPARE stmt FROM @v_sql;
        /*执行此动态sql, 此动态sql的作用, 是从Goods中提取有效数据*/
        EXECUTE stmt;
        /*释放此资源*/
        DEALLOCATE PREPARE stmt;
           
        END IF;
    UNTIL done END REPEAT;
    CLOSE mycursor;
    END$$

DELIMITER ;
 

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 0
博文 14
码字总数 5895
×
Eureka_尤里卡
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: