方式一、


  1. drop procedure if exists del_all_tb;
  2. delimiter $$
  3. create procedure del_all_tb(db char(20))
  4. begin
  5. declare done int default 0;
  6. declare tb char(100);
  7. declare cur cursor for select table_name from infoRmation_schema.tables where table_schema = db and table_type = "BASE TABLE";
  8. declare continue handler for not found set done = 1;
  9. open cur;
  10. repeat
  11. fetch cur into tb;
  12. set @sql := concat("truncate ", tb, ";");
  13. prepare stmt from @sql;
  14. execute stmt;
  15. deallocate prepare stmt;
  16. until done end repeat;
  17. close cur;
  18. end $$
  19. delimiter ;
  20. call del_all_tb("atdps");
  21. drop procedure if exists del_all_tb;

方式二、


  1. #如果存在del_all_tb存储过程则删除del_all_tb存储过程
  2. drop procedure if exists del_all_tb;
  3. #如果存在 tmpTable 临时表则删除 del_all_tb 临时表
  4. DROP TABLE if EXISTS tmpTable;
  5. #创建 del_all_tb存储过程
  6. create procedure del_all_tb(db char(20))
  7. begin
  8. #申明变量
  9. DECLARE tntmp VARCHAR(100);
  10. #创建临时表
  11. create table tmpTable (tablename VARCHAR(100),flag int);
  12. #清空临时表
  13. truncate TABLE tmpTable;
  14. #将需要清空的表插入到临时表
  15. INSERT INTO tmpTable(tablename , flag ) (SELECT table_name ,0 as a FROM information_schema.tables
  16. WHERE table_schema = db and table_type='BASE TABLE');
  17. #循环获取所有的表明以及删除状态
  18. SELECT tablename into tntmp FROM tmpTable WHERE flag = 0 limit 1;
  19. WHILE tntmp <> '' DO
  20. #拼写删除语句
  21. set @sqlText := concat("truncate ", tntmp, ";");
  22. prepare stmt from @sqlText;
  23. #执行语句
  24. execute stmt;
  25. #释放删除语句
  26. deallocate prepare stmt;
  27. #更新表状态
  28. UPDATE tmpTable SET flag=1 WHERE tablename = tntmp;
  29. #选择一下条语句
  30. SELECT tablename into tntmp FROM tmpTable WHERE flag = 0 limit 1;
  31. END WHILE;
  32. end;
  33. call del_all_tb("atdps");
  34. #如果存在del_all_tb存储过程则删除del_all_tb存储过程
  35. drop procedure if exists del_all_tb;
  36. #如果存在 tmpTable 临时表则删除 del_all_tb 临时表
  37. DROP TABLE if EXISTS tmpTable;

【数据库-MySql】清空所有表格的所有数据的更多相关文章

  1. oracle数据库中导入Excel表格中的数据

    1.点击[工具]-->[ODBC 导入器],如图: 2.在导入器里选择第一个[来自ODBC的数据],用户名/系统DSN-->填写[Excel Files],输入用户名和密码,点击 [连接] ...

  2. 利用PHP实现登录与注册功能以及使用PHP读取mysql数据库——以表格形式显示数据

    登录界面 <body><form action="login1.php" method="post"><div>用户名:&l ...

  3. Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值

    1 Statement和PreparedStatement的特点   a)对于创建和删除表或数据库,我们可以使用executeUpdate(),该方法返回0,表示未影向表中任何记录   b)对于创建和 ...

  4. 用python批量向数据库(MySQL)中导入数据

    用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同 Current database: pyt ...

  5. MySQL+Service+Servlet+Jsp实现Table表格分页展示数据

    下面以一个示例讲解如何使用MySQL+Service+Servlet+Jsp实现Table表格分页展示数据: eg:请假管理系统 要求如下: 一.打开首页页面, 访问查询请假记录的 servlet , ...

  6. 数据库 MySQL 之 数据操作

    数据库 MySQL 之 数据操作 一.MySQL数据类型介绍 MySQL支持多种类型,大致可以分为四类:数值.字符串类型.日期/时间和其他类型. ①二进制类型 bit[(M)] 二进制位(101001 ...

  7. mysql数据库-mysql数据定义语言DDL (Data Definition Language)归类(六)

    0x01 创建数据库并指定字符集和排序规则 -- 三种实例写法 create database temptab2 character set utf8 collate utf8_general_ci; ...

  8. paip.导入数据英文音标到数据库mysql为空的问题之道解决原理

    paip.导入数据英文音标到数据库mysql为空的问题之道解决原理 #---原因:mysql 导入工具的bug #---解决:使用双引号不个音标括起来. 作者 老哇的爪子 Attilax 艾龙,  E ...

  9. Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql、oracle...)间进行数据的传递

    http://niuzhenxin.iteye.com/blog/1706203   Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql.postgresql.. ...

随机推荐

  1. mybatis 原理

    什么是Mybatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为 ...

  2. 第二次作业利用java语言编写计算器进行四则运算

    随着第一次作业的完成,助教 牛老师又布置了第二次作业:用java语言编写一个程序然后进行四则运算用户用键盘输入一个字符来结束程序显示统计结果.一开始看到这个题目我也着实吓了一跳 因为不知道如何下手而且 ...

  3. TCP系列55—拥塞控制—18、其他拥塞控制算法及相关内容概述

    前面我们演示分析了100+个wireshark TCP实例,拥塞控制部分也介绍常见的拥塞处理场景以及4种拥塞撤销机制,但是我们一直使用的都是reno拥塞控制算法.实际上拥塞控制发展到今天已经有了各种各 ...

  4. 转 webpack 插件 svg-sprite-loader

    最近开始看 Vue 了,首先用官方的模版把项目快速搭建起来: Vue.js 提供一个官方命令行工具,可用于快速搭建大型单页应用.该工具提供开箱即用的构建工具配置,带来现代化的前端开发流程.只需几分钟即 ...

  5. windows多线程(十) 生产者与消费者问题

    一.概述 生产者消费者问题是一个著名的线程同步问题,该问题描述如下:有一个生产者在生产产品,这些产品将提供给若干个消费者去消费,为了使生产者和消费者能并发执行,在两者之间设置一个具有多个缓冲区的缓冲池 ...

  6. BugScan插件编写高(gǎo)级(jī)教程

    声明:本文最先发布在:http://q.bugscan.net/t/353 转载请注明出处 有问题可以和我交流 邮件(Medici.Yan@gmail.com) 个人博客地址:http://www.c ...

  7. SpringBoot(六)_AOP统一处理请求

    什么是AOP AOP 是一种编程范式,与编程语言无关: 将通用逻辑从业务逻辑中分离出来(假如你的业务是一条线,我们不在业务线上写一行代码就能完成附加任务!我们会把代码写在其他的地方): 具体实现 (1 ...

  8. 计算机网络【10】—— Cookie与Session

    一.cookie 和session 的区别 a.cookie数据存放在客户的浏览器上,session数据放在服务器上. b.cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKI ...

  9. python3 执行AES加密方法

    cmd执行命令:pip install pycryptodome # -*- coding: utf-8 -*- # __author__ = 'Carry' import base64 from C ...

  10. 【刷题】BZOJ 2154 Crash的数字表格

    Description 今天的数学课上,Crash小朋友学习了最小公倍数(Least Common Multiple).对于两个正整数a和b,LCM(a, b)表示能同时被a和b整除的最小正整数.例如 ...