/*
对*dt库下的所有数据表删除docuemttype为空和documenttype为MD,PD,ET的数据:
delete from 表名 where length(documenttype)<2 or documenttype is null or documenttype in ('et','md','pd'); */
DELIMITER $$
USE `数据库名称1`$$
DROP PROCEDURE IF EXISTS `存储过程名称1`$$CREATE PROCEDURE `存储过程名称1`() BEGIN
DECLARE str varchar(40);
DECLARE Done INT DEFAULT 0;
DECLARE rs CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = '数据库名称1'; /* 异常处理 */
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET Done = 1; /* 打开游标 */ OPEN rs;
/* 逐个取出当前记录userId字段的值*/ FETCH NEXT FROM rs INTO str; /* 遍历数据表 */ REPEAT
delete from str where length(documenttype)<2 or documenttype is null or documenttype in ('et','md','pd');FETCH NEXT FROM rs INTO str;UNTIL Done END REPEAT; /* 关闭游标 */ CLOSE rs;END$$
DELIMITER ;use 数据库名称1;call 存储过程名称1;
/*
对*sd库下的所有数据表删除docuemttype不为空的数据delete from 表名 where length(documenttype)>1;*/
DELIMITER $$
USE `数据库名称2`$$
DROP PROCEDURE IF EXISTS `存储过程名称2`$$CREATE PROCEDURE `存储过程名称2`() BEGIN
DECLARE str varchar(40);
DECLARE Done INT DEFAULT 0;
DECLARE rs CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = '数据库名称2'; /* 异常处理 */
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET Done = 1; /* 打开游标 */ OPEN rs;
/* 逐个取出当前记录userId字段的值*/ FETCH NEXT FROM rs INTO str; /* 遍历数据表 */ REPEAT
delete from str where length(documenttype)>1;FETCH NEXT FROM rs INTO str;UNTIL Done END REPEAT; /* 关闭游标 */ CLOSE rs;END$$
DELIMITER ;use 数据库名称2;call 存储过程名称2;
/*
对*et库下的所有数据表删除⾮学位论⽂数据:
delete from 表名 where length(doucmenttype)='' or documenttype is null or documenttype not in ('et','md','pd');*/
DELIMITER $$
USE `数据库名称3`$$
DROP PROCEDURE IF EXISTS `存储过程名称3`$$CREATE PROCEDURE `存储过程名称3`() BEGIN
DECLARE str varchar(40);
DECLARE Done INT DEFAULT 0;
DECLARE rs CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = '数据库名称3'; /* 异常处理 */
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET Done = 1; /* 打开游标 */ OPEN rs;
/* 逐个取出当前记录userId字段的值*/ FETCH NEXT FROM rs INTO str; /* 遍历数据表 */ REPEAT
delete from str where length(doucmenttype)='' or documenttype is null or documenttype not in ('et','md','pd');FETCH NEXT FROM rs INTO str;UNTIL Done END REPEAT;/* 关闭游标 */ CLOSE rs;END$$
DELIMITER ;use 数据库名称3;call 存储过程名称3;
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务