MYSQL全库查找指定字符串
发布日期:2021-08-22 19:57:25 浏览次数:55 分类:技术文章

本文共 1679 字,大约阅读时间需要 5 分钟。

hot3.png

DELIMITER //DROP PROCEDURE IF EXISTS `proc_FindStrInAllDataBase`//# CALL `proc_FindStrInAllDataBase` ('testdb','中');CREATE PROCEDURE `proc_FindStrInAllDataBase` ( IN para_databasename VARCHAR(128), IN para_finstr VARCHAR(128) )BEGIN -- 需要定义接收游标数据的变量  DECLARE tmp_dbname VARCHAR(128); DECLARE tmp_tbname VARCHAR(128); DECLARE tmp_colname VARCHAR(128);  -- 遍历数据结束标志 DECLARE done INT DEFAULT FALSE;      -- 游标 DECLARE cur_db_tb CURSOR  FOR  SELECT    #*,  c.table_schema,c.table_name,c.COLUMN_NAME FROM   information_schema.`COLUMNS` C  INNER JOIN information_schema.`TABLES` t ON c.`TABLE_NAME`=t.`TABLE_NAME`  WHERE  T.`TABLE_TYPE`='BASE TABLE'  AND   (c.data_type  LIKE '%char%'  OR c.data_type  LIKE '%text%') AND   (C.TABLE_SCHEMA=para_databasename OR IFNULL(para_databasename,'') ='') AND IFNULL(para_finstr,'')<>'';   -- 将结束标志绑定到游标 DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; CREATE TEMPORARY TABLE IF NOT EXISTS rstb(dbname VARCHAR(128),tbname VARCHAR(128),colname VARCHAR(128),cnt INT);  -- 打开游标 OPEN cur_db_tb;   -- 开始循环   read_loop: LOOP   -- 提取游标里的数据,这里只有一个,多个的话也一样;   FETCH cur_db_tb INTO  tmp_dbname,tmp_tbname,tmp_colname;   -- 声明结束的时候   IF done THEN   LEAVE read_loop;   END IF;   -- 这里做你想做的循环的事件   SET @sqlstr=CONCAT('select count(1) into @rn from ',tmp_dbname,'.',tmp_tbname,' where ',tmp_colname,' like ''%',para_finstr,'%''');      PREPARE str FROM @sqlstr;     EXECUTE str;      DEALLOCATE PREPARE str;   IF IFNULL(@rn,0)>0    THEN    INSERT INTO rstb VALUES(tmp_dbname,tmp_tbname,tmp_colname,@rn);   END IF;   END LOOP; -- 关闭游标 CLOSE cur_db_tb;  SELECT * FROM rstb; DROP TABLE rstb; END//DELIMITER ;

转载于:https://my.oschina.net/u/2604684/blog/603497

转载地址:https://blog.csdn.net/weixin_33755554/article/details/92332689 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:JavaFx系列(一) Dialog中的Diolog置頂
下一篇:深刻理解Python中的元类(metaclass)

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年03月30日 09时49分29秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

《投资最重要的事》精髓:利用逆向思维,掌握既冷静又勇猛的投资方法,成为投资界真正厉害的人。 2019-04-26
《周期》书中的精髓:如何利用周期,掌握世界的发展趋势,实现财富积累。 2019-04-26
《伟大的博弈》书中的精髓:华尔街是如何从一条小街,一步步发展为世界金融中心的。 2019-04-26
《逃不开的经济周期》书中的精髓:经济周期是推动创新变革和经济增长以及复兴的关键力量。 2019-04-26
《朋友还是对手》书中的精髓:奥地利学派和芝加哥学派两派共识远多于分歧,两派首先是朋友,其次才是对手。 2019-04-26
《动物精神》书中的精髓:人类的非理性面影响经济决策,这些有可能是金融危机的根源。 2019-04-26
《赢家的诅咒》书中的精髓:人性的复杂让主流经济学出现了诸多失灵,如何用更多理论完善经济学大厦是经济学家的重要使命 2019-04-26
《巴菲特法则》书中的精髓:用好巴菲特企业前景投资法则,股票投资稳赚不赔。 2019-04-26
《战胜华尔街》书中的精髓:业余投资者如何根据行业特点选好股票,赚得比专业的投资者还要多? 2019-04-26
《巴菲特的估值逻辑》书中的精髓:在投资过程中不断总结经验,不断提升投资能力,不断探索、加深对好公司的理解,成就了巴菲特的投资神话。 2019-04-26
《股市稳赚》书中的精髓:用简单的神奇公式进行股票投资,获得稳定而持久的收益。 2019-04-26
《曾国藩的经济课》书中的精髓:我们如何像曾国藩一样,在遇到道德和环境冲突时,既能保持自己的道德,又能调动资源,帮助自己成事。 2019-04-26
《富人的逻辑》书中的精髓:为什么暴富起来的人会在短期内失去财富,我们又该如何去创造财富和持续拥有财富。 2019-04-26
作文提升~老师整理的优美比喻句太实用 2019-04-26
作文提升~老师整理的优美拟人句太实用 2019-04-26
作文提升~老师整理的优美排比句太实用 2019-04-26
作文提升~老师整理的夸张句,太实用了,赶快收藏 2019-04-26
作文提升~写景常用的拟人句,很经典 2019-04-26
小学教师资格考试科目一思维导图-教育观、教师观和学生观 2019-04-26
小学教师资格考试科目一思维导图-职业道德 2019-04-26