【数据库-MySql】清空所有表格的所有数据
方式一、
-
drop procedure if exists del_all_tb;
-
delimiter $$
-
create procedure del_all_tb(db char(20))
-
begin
-
declare done int default 0;
-
declare tb char(100);
-
declare cur cursor for select table_name from infoRmation_schema.tables where table_schema = db and table_type = "BASE TABLE";
-
declare continue handler for not found set done = 1;
-
open cur;
-
-
repeat
-
fetch cur into tb;
-
set @sql := concat("truncate ", tb, ";");
-
prepare stmt from @sql;
-
execute stmt;
-
deallocate prepare stmt;
-
until done end repeat;
-
close cur;
-
end $$
-
delimiter ;
-
call del_all_tb("atdps");
-
drop procedure if exists del_all_tb;
方式二、
-
#如果存在del_all_tb存储过程则删除del_all_tb存储过程
-
drop procedure if exists del_all_tb;
-
#如果存在 tmpTable 临时表则删除 del_all_tb 临时表
-
DROP TABLE if EXISTS tmpTable;
-
#创建 del_all_tb存储过程
-
create procedure del_all_tb(db char(20))
-
begin
-
#申明变量
-
DECLARE tntmp VARCHAR(100);
-
#创建临时表
-
create table tmpTable (tablename VARCHAR(100),flag int);
-
#清空临时表
-
truncate TABLE tmpTable;
-
#将需要清空的表插入到临时表
-
INSERT INTO tmpTable(tablename , flag ) (SELECT table_name ,0 as a FROM information_schema.tables
-
WHERE table_schema = db and table_type='BASE TABLE');
-
-
#循环获取所有的表明以及删除状态
-
SELECT tablename into tntmp FROM tmpTable WHERE flag = 0 limit 1;
-
WHILE tntmp <> '' DO
-
-
#拼写删除语句
-
set @sqlText := concat("truncate ", tntmp, ";");
-
prepare stmt from @sqlText;
-
#执行语句
-
execute stmt;
-
#释放删除语句
-
deallocate prepare stmt;
-
#更新表状态
-
UPDATE tmpTable SET flag=1 WHERE tablename = tntmp;
-
#选择一下条语句
-
SELECT tablename into tntmp FROM tmpTable WHERE flag = 0 limit 1;
-
END WHILE;
-
end;
-
call del_all_tb("atdps");
-
-
#如果存在del_all_tb存储过程则删除del_all_tb存储过程
-
drop procedure if exists del_all_tb;
-
#如果存在 tmpTable 临时表则删除 del_all_tb 临时表
-
DROP TABLE if EXISTS tmpTable;
【数据库-MySql】清空所有表格的所有数据的更多相关文章
- oracle数据库中导入Excel表格中的数据
1.点击[工具]-->[ODBC 导入器],如图: 2.在导入器里选择第一个[来自ODBC的数据],用户名/系统DSN-->填写[Excel Files],输入用户名和密码,点击 [连接] ...
- 利用PHP实现登录与注册功能以及使用PHP读取mysql数据库——以表格形式显示数据
登录界面 <body><form action="login1.php" method="post"><div>用户名:&l ...
- Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值
1 Statement和PreparedStatement的特点 a)对于创建和删除表或数据库,我们可以使用executeUpdate(),该方法返回0,表示未影向表中任何记录 b)对于创建和 ...
- 用python批量向数据库(MySQL)中导入数据
用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同 Current database: pyt ...
- MySQL+Service+Servlet+Jsp实现Table表格分页展示数据
下面以一个示例讲解如何使用MySQL+Service+Servlet+Jsp实现Table表格分页展示数据: eg:请假管理系统 要求如下: 一.打开首页页面, 访问查询请假记录的 servlet , ...
- 数据库 MySQL 之 数据操作
数据库 MySQL 之 数据操作 一.MySQL数据类型介绍 MySQL支持多种类型,大致可以分为四类:数值.字符串类型.日期/时间和其他类型. ①二进制类型 bit[(M)] 二进制位(101001 ...
- mysql数据库-mysql数据定义语言DDL (Data Definition Language)归类(六)
0x01 创建数据库并指定字符集和排序规则 -- 三种实例写法 create database temptab2 character set utf8 collate utf8_general_ci; ...
- paip.导入数据英文音标到数据库mysql为空的问题之道解决原理
paip.导入数据英文音标到数据库mysql为空的问题之道解决原理 #---原因:mysql 导入工具的bug #---解决:使用双引号不个音标括起来. 作者 老哇的爪子 Attilax 艾龙, E ...
- Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql、oracle...)间进行数据的传递
http://niuzhenxin.iteye.com/blog/1706203 Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql.postgresql.. ...
随机推荐
- C#编程概述
一个简单的c#程序 标识符 标识符是一种字符串,用来命名变量.方法.参数和许多后面将要阐述的其他程序结构. 关键字 所有C#关键字都由小写字母组成,但是.NET类型名使用Pascal大小写约定. Ma ...
- my everying
evering -> everything 一.请回望暑假时的第一次作业,你对于软件工程课程的想象 1)对比开篇博客你对课程目标和期待,"希望通过实践锻炼,增强计算机专业的能力和就业竞 ...
- 团队作业5-Alpha版本测试报告
1.在测试过程中总共发现了多少Bug?每个类别的Bug分别为多少个? 修复的Bug: a. 修复的bug: 页面打开后比例改变: 出现中文乱码: 点击按钮时不能响应: 导航栏加入显示错误: 上传图片后 ...
- 信息安全C散列函数的应用及其安全性2016011992
1:散列函数的具体应用 使用一个散列函数可以很直观的检测出数据在传输时发生的错误. MD5 Hash算法的"数字指纹"特性,使它成为目前应用最广泛的一种文件完整性校验(Checks ...
- form表单转化json对象
利用 $.fn 可以让每一个jquery 对象都能直接使用这个方法. //form表单转化json对象$.fn.serializeObject = function () { var o = {}; ...
- <构建之法>第一二三章感悟
第一章: 看了大概了解软件从一个想法到最终成品的一个过程.软件先是由一个想法引出的,有那个想法,你需要一个工具去做什么,根据自己想要的功能大概做一个能实现基本功能的软件,对客户提出的要求进行完善,实现 ...
- PAT 1074 宇宙无敌加法器
https://pintia.cn/problem-sets/994805260223102976/problems/994805263297527808 地球人习惯使用十进制数,并且默认一个数字的每 ...
- [转帖]升级 Ubuntu,解决登录时提示有软件包可以更新的问题
升级 Ubuntu,解决登录时提示有软件包可以更新的问题 2017年12月05日 11:58:17 阅读数:2953更多 个人分类: ubuntu Connecting to ... Connecti ...
- Android 布局类控件
Android提供6种布局类的控件:LinearLayout.TableLayout.GridLayout.FrameLayout.RalativeLayout.AbsoluteLayout 网上搜到 ...
- mysql中字符串类型char(n)和varchar(n)的区别
n的含义 根据网络上找到的结果(不能保证准确),在5.0.3以后版本中,n均代表字符数,而不是字节数:我用来测试的版本是5.7.20,该版本中,n表示字符数. 验证过程如下 建表 CREATE TAB ...