MySql清空所有表数据【慎用】

CREATE PROCEDURE `up_truncate_all_table`()
BEGIN
  DECLARE done INT DEFAULT 0;
  DECLARE tname CHAR(50);
  DECLARE cur1 CURSOR FOR SELECT table_name from INFORMATION_SCHEMA.TABLES WHERE table_schema = ‘db_name‘;
  DECLARE CONTINUE HANDLER FOR SQLSTATE ‘02000‘ SET done = 1;

  OPEN cur1;

  REPEAT
    FETCH cur1 INTO tname;
    IF NOT done THEN
          set  @str=concat(‘truncate table ‘, tname);
      prepare stmt1 from @str;
          execute stmt1;
          deallocate prepare stmt1;
    END IF;
  UNTIL done END REPEAT;

  CLOSE cur1;
END
时间: 2024-09-28 20:45:35

MySql清空所有表数据【慎用】的相关文章

mysql 清空所有表数据重置自增ID

1.登录mysql客户端 mysql -u root -p 输入密码进入 2.生成 sql 语句文件 SELECT CONCAT('TRUNCATE TABLE ',TABLE_NAME,';') into outfile '/home/truncatetable.sql' FROM information_schema.tables WHERE TABLE_SCHEMA='数据库名'; 3.mysql 执行sql 文件 mysql -uroot -p密码 数据库名</home/truncate

linux MySQL 如何复制表数据或表结构到新表中

经常操作xshell 发现,复制同样的功能,需要复制数据表的结构和数据,linux MySQL 如何复制表数据或表结构到新表中? 1.MySQL复制表结构及数据到新表的方法 CREATE TABLE new_table SELECT * FROM old_table; 2,只复制表结构到新表 CREATE TABLE new_table like old_table; 注意:还一种方法,但是不复制列属性和索引 CREATE TABLE new_table SELECT * FROM old_ta

mysql,oracle表数据相互导入

mysql导入oracle: 例如mysql中有ts_user_info表,现在要导入到oracle中的user_info表 1:导出mysql表数据到data.txt文件 mysql> select * from ts_user_info into outfile 'data.txt' fields terminated by ','; Query OK, 2 rows affected (0.00 sec) 说明: fields terminated by ',':将数据字段中的,号去掉 2

mysql:删除表数据drop、truncate和delete的用法

程度从强到弱 1.drop  table tb drop将表格直接删除,没有办法找回 2.truncate (table) tb 删除表中的所有数据,不能与where一起使用 3.delete from tb (where) 删除表中的数据(可制定某一行) 区别:truncate和delete的区别 1.事务:truncate是不可以rollback的,但是delete是可以rollback的: 原因:truncate删除整表数据(ddl语句,隐式提交),delete是一行一行的删除,可以rol

要清空一个表数据

用truncate.delete都可以,比如要清空一个名为abc的表,就这样写sql: truncate table abc;(截断表,数据不能回复,回滚)或者:delete from abc;

安装sqoop,并将Mysql中的表数据导出到HDFS下的文本文件

首先是安装mysql数据库.使用 sudo apt-get install mysql-server命令即可安装完成.然后进行表的创建和插入数据.如图. 然后下载sqoop和连接mysql数据库的jar包.接下来是安装sqoop.首先是配置sqoop-env.sh文件.如图. 然后将config-sqoop文件中不需要检查的注释掉.如图. 然后接下来是将sqoop-1.4.4.jar包和连接mysql的jar包copy到hadoop目录下的lib目录中,同时把hadoop-core-1.2.1.

sql server 清空数据库表数据

--禁用外键约束 exec   sp_msforeachtable   'alter   table   ?   nocheck   constraint   all ' --清空数据 truncate   table   表名 --启用外键约束 exec   sp_msforeachtable   'alter   table   ?   check   constraint   all '

mysql把A表数据插入到B表数据的几种方法

web开发中,我们经常需要将一个表的数据插入到另外一个表,有时还需要指定导入字段,设置只需要导入目标表中不存在的记录,虽然这些都可以在程序中拆分成简单sql来实现,但是用一个sql的话,会节省大量代码.下面我以mysql数据库为例分情况一一说明: 1.如果2张表的字段一致,并且希望插入全部数据,可以用这种方法:  INSERT INTO 目标表 SELECT * FROM 来源表; insert into insertTest select * from insertTest2; 2.如果只希望

mysql批量删除表数据

2015-09-23 #delete_table_data.sh#批量删除mysql库中表数据 #!/bin/bash ### AUTHOR: Leo ### DATE: 2015/09/23 ### REV: 1.0 echo -e "Input the dbname you want to use: \c" read db mysql -uroot -ppro#pateo -e "use $db;show tables;"|grep -v Tables>t