mysql存储过程模糊查询_Mysql之存储过程“模糊查询drop表”
需求:
清空 show tables like "%2016%"
實現(xiàn):
DELIMITER //
drop procedure if exists p_clean_table;
create PROCEDURE p_clean_table(in tab varchar(128))
begin
DECLARE name VARCHAR(64);
-- 遍歷數(shù)據(jù)結(jié)束標志
DECLARE done INT DEFAULT FALSE;
DECLARE tables_cur CURSOR FOR select table_name from information_schema.tables where table_schema='eqiurong' and table_name like '%2016%';
-- 將結(jié)束標志綁定到游標
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
-- 打開游標
OPEN tables_cur;
-- 開始循環(huán)
read_loop: LOOP
-- 提取游標里的數(shù)據(jù),這里只有一個,多個的話也一樣;
FETCH tables_cur INTO name;
-- 聲明結(jié)束的時候
IF done THEN
LEAVE read_loop;
END IF;
-- 這里做你想做的循環(huán)的事件
set @bsql :=concat("drop table if exists ",name);
PREPARE STMT FROM @bsql;
EXECUTE STMT ;
END LOOP;
-- 關(guān)閉游標
CLOSE tables_cur;
end;
//
DELIMITER ;
ps:
存儲過程語法:
create PROCEDURE p_xx(in p1 varchar(128),out p2 varchar(128))
begin
............
end;
總結(jié)
以上是生活随笔為你收集整理的mysql存储过程模糊查询_Mysql之存储过程“模糊查询drop表”的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 马斯克开会当场解雇推特工程师:他说我人气
- 下一篇: 中芯国际CEO赵海军:新能源汽车相关收入