`
iihero
  • 浏览: 250381 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MySQL存储过程:删除带like条件的表名

阅读更多
delimiter //

CREATE PROCEDURE drop_table_like(IN table_prefix varchar(64), IN username varchar(256))
BEGIN
    DECLARE tname varchar(128) default '';
    DECLARE not_found INT DEFAULT 0;
    DECLARE cur_tnames cursor FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = username and table_name like table_prefix;
    -- concat("'", table_prefix, "%'");
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET not_found = 1;
    DECLARE EXIT HANDLER FOR SQLEXCEPTION ROLLBACK; 
    OPEN cur_tnames;
    WHILE not_found = 0 DO
        FETCH cur_tnames INTO tname;
        IF NOT not_found THEN
            -- select tname;
            set @sql = concat('DROP TABLE ', tname);
            prepare stmt from @sql;
            execute stmt;
            deallocate prepare stmt;
        END IF;
    END WHILE;
    CLOSE cur_tnames;
END
//

mysql> call drop_table_like('taba%', 'foo')//
Query OK, 0 rows affected (0.17 sec)

 要说的是,前边使用concat("'", table_prefix, "%'");

 作为cursor的定义条件,居然不能用。或许mysql不认可这种条件定义。

 

 

0
0
分享到:
评论

相关推荐

    mysql 存储过程分页 (按条件 按表名 按字段名称)分页

    更改语句结束符号 delimiter$$ 查看存储过程结构 show create procedure proc_name

    mysql查询语句汇总.docx

    mysql查询语句汇总 MySQL查询语句是数据库操作的核心部分,涵盖了数据的增删改查等多个方面。由于篇幅限制,我将尽量简洁而全面地介绍MySQL查询语句的各个方面,以满足您的需求。 一、基础查询 基础查询是最常用的...

    Mysql存储过程常用语句模板

    Mysql存储过程常用语句模板(含变量,if,三种循环等等) Mysql存储过程常用语句模板(含变量,if,三种循环等等) Mysql存储过程常用语句模板(含变量,if,三种循环等等) Mysql存储过程常用语句模板(含变量,if,三...

    mysql存储过程之返回多个值的方法示例

    本文实例讲述了mysql存储过程之返回多个值的方法。分享给大家供大家参考,具体如下: mysql存储函数只返回一个值。要开发返回多个值的存储过程,需要使用带有INOUT或OUT参数的存储过程。咱们先来看一个orders表它的...

    Mysql学习指令大全-适合快速了解掌握Mysql学习参考

    *复制表:create table 表名 like 被复制的表名; 2.R(retrieve):查询 *查询某个数据库中所有的表名称 show tables; *查询表结构 desc 表名; 3.U(update):修改 1.修改表名: alter table 表名 rename to 新...

    mysql经典教程+mysql存储过程讲解

    mysql经典教程+mysql存储过程讲解 重点讲解Mysql的存储过程,触发器,游标的使用 对mysql不太熟的朋友可以好好学习。。。

    c++实现调mysql存储过程

    c++实现调mysql存储过程,实现存储过程的出参入参,可以支持查询多数据返回,还有存储过程的复杂数据的增删改等

    mysql存储过程实现分页

    mysql存储过程实现分页 mysql存储过程实现分页 mysql存储过程实现分页 mysql存储过程实现分页

    MySQL存储过程学习

    MySQL存储过程学习 MySQL存储过程 MySQL存储过程

    MySQL存储过程的异常处理方法

    本文实例讲述了MySQL存储过程的异常处理方法。分享给大家供大家参考。具体如下: mysql> mysql> delimiter $$ mysql> mysql> CREATE PROCEDURE myProc -> (p_first_name VARCHAR(30), -> p_last_name VARCHAR(30)...

    Mysql分页存储过程

    针对mysql分页的一个存储过程,可以动态传入表名,可带查询条件,可带排序列

    MySQL存储过程 MySQL存储过程

    MySQL存储过程 MySQL存储过程 MySQL存储过程 MySQL存储过程 MySQL存储过程

    mysql中文手册+mysql命令大全+mysql存储过程

    mysql中文手册.chm+mysql命令大全.chm+mysql存储过程.pdf

    在MySQL中创建带有IN和OUT参数的存储过程的方法

    这些示例都很简单,能够很好的帮助你理解 MySQL 中创建带参数存储过程的语法。这些示例已在 MySQL 5.5 中通过测试。我们将用下面的雇员表创建并测试这些储存过程:   mysql> select * from employee; +--------+-...

    MySql 分页存储过程以及代码调用

    MySql 分页 存储过程 MySql 分页 存储过程 MySql 分页 存储过程

    mysql存储过程mysql存储过程

    mysql存储过程 mysql存储过程 mysql存储过程 mysql存储过程

    MySQL存储过程实战SQL脚本

    内容概述:通过MySQL存储过程实战的例子,学会使用MySQL存储过程。包含以下内容: 创建无参存储过程、有参存储过程、IF-ELSE存储过程、WHILE循环存储过程、CASE-WHEN条件控制存储过程、REPEAT UNTIL循环存储过程、...

    深入mysql存储过程中表名使用参数传入的详解

    BEGIN declare date_str varchar(8);declare table_prefix varchar(20);set table_prefix=’mail_rare_visit_’;set date_str = DATE_FORMAT(CURRENT_DATE(),’%Y%m%d’);set @table_name = concat(table_prefix, ...

    MySQL数据库:存储过程的创建1.pptx

    创建存储过程1 课程目标 1)了解 ——存储过程的优点; 2)理解 —— 存储过程的概念; 3)掌握 —— 存储过程的创建方法; 存储过程优点 使用存储过程的优点有: (1)存储过程在服务器端运行,执行速度快。 (2)...

    MySQL存储过程经典教程

    MySQL存储过程经典教程MySQL存储过程经典教程MySQL存储过程经典教程MySQL存储过程经典教程MySQL存储过程经典教程MySQL存储过程经典教程

Global site tag (gtag.js) - Google Analytics