精华内容
下载资源
问答
  • mysql删除所有存储过程
    万次阅读 多人点赞
    2022-07-23 21:13:30

    前言

    在项目开发中,经常会遇到这样一种场景,当修改A表的一条数据时,需要关联修改B表、C表甚至其他更多表的数据,为什么会这样呢?

    在真实的业务场景中,往往一张表的数据关联的业务是多样的,举例来说,用户在页面上完成一个订单,对服务端来说,与这个订单相关的业务还有很多,比如生成一条出库记录,扣减库存,用户的账户余额扣减,商家的账户余额增加,财务结算等等…

    所有这些不同的业务员操作,在服务端来说,最终体现的就是与数据库的交互,可想而知,假如关联的业务越复杂,需要与数据库进行IO的次数就越多;

    那么有没有什么办法,在面对此类场景业务时,提升服务端的性能,减少数据库IO呢?这就是本篇将要分享的存储过程。

    什么是存储过程

    存储过程就是事先经过编译并存储在数据库中的一段 SQL 语句的集合;

    为什么使用存储过程

    调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用。

    存储过程特点:

    • 封装,复用, 可以把某一业务SQL封装在存储过程中,需要用到的时候直接调用即可;
    • 可以接收参数,也可以返回数据, 在存储过程中,可以传递参数,也可以接收返回值;
    • 减少网络交互,提升
    更多相关内容
  • mysql存储过程 删除数据库所有表的存储过程
  • 存储过程实现了MySQL数据库分区表的自动创建和自动删除功能。亲测有效。希望有用。
  • 查看存储过程 存储过程创建以后,用户可以通过SHOW STATUS语句来查看存储过程的状态,也可以通过SHOW CREATE语句来查看存储过程的定义。用户也可以通过查询information_schema数据库下的Routines表来查看存储过程...

    目录

        一、查看存储过程

     1.SHOW STATUS语句查看存储过程

     2.使用SHOW CREATE语句查看存储过程的定义

     3、从information_schema.Routine表中查看存储过程的信息

        二、存储过程的删除


    一、查看存储过程

        存储过程创建以后,用户可以通过SHOW STATUS语句来查看存储过程的状态,也可以通过SHOW CREATE语句来查看存储过程的定义。用户也可以通过查询information_schema数据库下的Routines表来查看存储过程的信息。本节将详细讲解查看存储过程的状态与定义的方法。

     

    1.SHOW STATUS语句查看存储过程

         在MySQL中,可以通过SHOW STATUS语句。其基本语法形式如下:

     SHOW PROCEDURE STATUS  [ like ‘pattern’] ;
    • 参数PROCEDURE表示查询存储过程;
    • 参数LIKE 'pattern'用来匹配存储过程的名称。 
     show procedure status like 'proc%';


    2.使用SHOW CREATE语句查看存储过程的定义

        在MySQL中,可以通过SHOW CREATE语句查看存储过程的状态,语法形式如下: 

    SHOW CREATE PROCEDURE proc_name ;|\G      
    • 参数PROCEDURE表示查询存储过程;
    • 参数proc_name表示存储过程的名称。 

        Ⅰ使用分号结束

    show create procedure proc_age;

        Ⅱ使反斜杠结束(使用反斜杠条理更清晰)


    3、从information_schema.Routine表中查看存储过程的信息

        存储过程和函数的信息存储在information_schema数据库下的Routines表中。可以通过查询该表的记录来查询存储过程和函数的信息。其基本语法形式如下: 

    SELECT * FROM information_schema.Routines
        Where ROUTINE_NAME = ‘proc_name’;
    • 字段ROUTINE_NAME是Routines 存储存储过程和函数的列名称;
    • 参数proc_name表示存储过程或函数的名称。
    select * from information_schema.Routines 
        where routine_name = 'proc_age';

        或者单独查看存储过程的语句 👇

    select routine_definition from information_schema.Routines 
        where routine_name = 'proc_age';

    二、存储过程的删除

        在MySQL中删除存储过程通过SQL语句DROP完成: 

    DROP PROCEDURE proc_name;            
    • 关键字DROP PROCEDURE用来表示实现删除存储过程;
    • 参数proc_name表示所要删除的存储过程名称。 

        例如

    🍀🍀🍀🍀🍀🍀🍀🍀

     

    展开全文
  • MySQL系列—-存储过程、触发器存储过程创建一个存储过程,使得结果输出两个数的和执行存储过程,计算38加上26的和触发器在student表中创建删除触发器ctr_del查看触发器ctr_del的一般信息和文本信息删除学号为...
  • 获取指定数据中删除所有表的命令: SELECT CONCAT("DROP TABLE IF EXISTS ", TABLE_NAME, ";") FROM information_schema.TABLES WHERE table_schema = "gamedb"; 输出为: +--------------------------------------...

    获取指定数据中删除所有表的命令:

    SELECT CONCAT("DROP TABLE IF EXISTS ", TABLE_NAME, ";")
    FROM information_schema.TABLES
    WHERE table_schema = "gamedb";
    

    输出为:

    +--------------------------------------------------+
    | CONCAT("DROP TABLE IF EXISTS ", TABLE_NAME, ";") |
    +--------------------------------------------------+
    | DROP TABLE IF EXISTS mailinfos0;                 |
    | DROP TABLE IF EXISTS mailinfos1;                 |
    | DROP TABLE IF EXISTS mailinfos2;                 |
    | DROP TABLE IF EXISTS mailinfos3;                 |
    | DROP TABLE IF EXISTS mailinfos4;                 |
    | DROP TABLE IF EXISTS mailinfos5;                 |
    | DROP TABLE IF EXISTS mailinfos6;                 |
    | DROP TABLE IF EXISTS mailinfos7;                 |
    | DROP TABLE IF EXISTS mailinfos8;                 |
    | DROP TABLE IF EXISTS mailinfos9;                 |
    | DROP TABLE IF EXISTS mailinfos_system;           |
    | DROP TABLE IF EXISTS playerbasedata;             |
    | DROP TABLE IF EXISTS playerchapterdata;          |
    | DROP TABLE IF EXISTS playerequipdata;            |
    | DROP TABLE IF EXISTS playeritemdata;             |
    | DROP TABLE IF EXISTS v_mailinfos_all;            |
    +--------------------------------------------------+
    16 rows in set
    

    获取指定数据中删除所有存储过程的命令

    SELECT CONCAT("DROP PROCEDURE IF EXISTS ", ROUTINE_NAME, ";" )
    FROM information_schema.ROUTINES 
    WHERE ROUTINE_SCHEMA='gamedb';
    

    输出为:

    +---------------------------------------------------------+
    | CONCAT("DROP PROCEDURE IF EXISTS ", ROUTINE_NAME, ";" ) |
    +---------------------------------------------------------+
    | DROP PROCEDURE IF EXISTS AddNewMail_ForOne;             |
    | DROP PROCEDURE IF EXISTS AddNewMail_ForSYS;             |
    | DROP PROCEDURE IF EXISTS CreatePlayerData;              |
    | DROP PROCEDURE IF EXISTS LoadPlayerOtherData;           |
    +---------------------------------------------------------+
    4 rows in set
    
    展开全文
  • MySQL存储过程编写总结文档,包括循环结构样式,创建临时表,删除数据,MySQL分页,动态存储过程编写
  • 今天继续给大家介绍MySQL相关知识,本文主要内容是MySQL存储过程的查看、删除和整改。 一、存储过程查看 二、存储过程修改 三、存储过程删除

    今天继续给大家介绍MySQL相关知识,本文主要内容是MySQL中存储过程的查看、删除和整改。
    阅读本文,您需要对MySQL存储过程有一定的了解,如果您对此还存在困惑,欢迎查阅我博客内的文章,相信您一定会有所收获。相关文章链接:
    MySQL存储过程(一)——存储过程理论基础
    MySQL存储过程(二)——存储过程基本使用
    MySQL存储过程(三)——存储过程分支流控语句
    MySQL存储过程(四)——存储过程循环流控语句

    一、存储过程查看

    在建立好存储过程后,有时我们需要查看我们所创建好的存储过程。要查询当前数据库中存在的所有存储过程,可以执行命令:

    show procedure status\G
    

    执行结果如下:
    在这里插入图片描述
    如果要查看某个具体的存储过程,可以执行命令:

    show create procedure 【存储过程名】\G
    

    执行结果如下:
    在这里插入图片描述

    二、存储过程修改

    尽管MySQL数据库支持对存储过程的修改,但是我们依旧不可以修改存储过程中的内容,也不能修改存储过程的名称。如果想要修改存储过程的内容,只能删除原有的存储过程,然后再重新写一个存储过程;如果想要修改存储过程的名称,只能删除原有的存储过程,然后重新创建一个新的存储过程,并且把原有存储过程的内容写入到新的存储过程名称里面。
    MySQL只支持修改存储过程的一些特性,该修改命令SQL示例如下:

    alter procedure 【存储过程名】 【存储过程特性】;
    

    可以写入的存储过程特性主要有以下6种:
    1、contains sql。 表示子程序包含SQL语句,但是不包含读或者写的SQL语句。
    2、no sql。 表示子程序不包含SQL语句。
    3、reads sql data。 表示子程序中包含读数据的SQL语句。
    4、modifies sql data。 表示子程序中包含写数据的SQL语句。
    5、sql security define或sql security invoke。 如果是define,则表示该存储过程只有定义者自身才可以执行,如果是invoke,则表示调用者可以执行。
    6、comment 【注释信息】。 表示向该存储过程添加注释信息。

    三、存储过程删除

    存储过程的删除可以使用以下命令:

    drop procedure 【存储过程名】;
    

    原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

    展开全文
  • 数据库编程;;调用存储过程 ;调用存储过程 ;删除存储过程 ;存储过程的调用;谢谢
  • 通过存储过程删除Mysql数据库表中的重复记录,只保留一条;
  • MySQL中的存储过程(详细篇)

    万次阅读 多人点赞 2022-04-14 20:20:36
    MySQL5.0 版本开始支持存储过程。 如果在实现用户的某些需求时,需要编写一组复杂的SQL语句才能实现的时候,那么我们就可以将这组复杂的SQL语句集提前编写在数据库中,由JDBC调用来执行这组SQL语句。把编写在...
  • Mysql函数和存储过程

    万次阅读 2022-06-15 09:14:08
    设置变量 定义用户变量 : set @...IN 类型参数可以接收变量也可以接收常量,传入的参数在存储过程内部使用即可,但是在存储过程内部的修改无法传递到外部。OUT 类型参数只能接收一个变量,接收的变量不能够在存储过
  • mysql 创建存储过程

    千次阅读 2022-06-28 17:41:34
    mysql创建存储过程
  • mysql8.0创建存储过程

    千次阅读 2020-07-23 17:43:30
    执行多批量多表单条相同记录删除操作; DELIMITER // CREATE PROCEDURE del_user(IN userId BIGINT) BEGIN DELETE FROM `user` WHERE id = userId ; DELETE FROM `user_auths` WHERE user_id = userId ; DELETE ...
  • mysql存储过程的例子
  • Mysql存储过程

    千次阅读 2022-05-10 15:37:50
    1、Mysql存储过程 MySQL 5.0 版本开始支持存储过程存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。 存储过程是为了完成特定功能的SQL语句集,经编译创建并...
  • 如何在MySQL中使用存储过程

    千次阅读 2022-03-27 15:29:04
    MySQL存储过程MySQL循环语句的基本使用
  • mysql 存储过程

    千次阅读 2021-01-18 21:29:44
    为什么要用存储过程将重复性很高的操作,封装到一个存储过程中,简化了对这些SQL的调用批量处理统一接口,确保数据安全相对于Oracle来说,Mysql存储过程相对功能较弱,使用较少​3.存储过程的创建和调用1. ...
  • Mysql存储过程调用

    千次阅读 2021-01-19 00:34:07
    1.1create procedure (创建)create procedure存储过程名 (参数列表)beginsql...要指定为其它参数,可在参数名之前使用关键词 out或inout在mysql客户端定义存储过程的时候使用delimiter命令来把语句定界符从;变为//。...
  • mysql数据库存储过程详解

    千次阅读 2022-04-14 23:41:28
    mysql数据库存储过程详解
  • mysql查看存储过程

    千次阅读 2021-01-19 20:06:42
    查询数据库中的存储过程和函数select `name` from mysql.proc where db = 'xx' and `type` = 'PROCEDURE'//存储过程select * from mysql.proc where db = 'xx' and `type` = 'PROCEDURE' and name='xx'select `name`...
  • MySQL存储过程

    千次阅读 2021-03-14 16:49:20
    MySQL存储过程存储过程是一组预先编译好的SQL语句的集合好处:提高了代码的重用性简化操作减少了编译次数并且减少了和数据库连接次数,提高效率创建存储过程#语法参数列表包含三部分参数模式参数名参数类型如...
  • mysql存储过程创建

    千次阅读 2022-04-09 17:31:00
    mysql存储过程mysql批量创建数据,创建10+数据
  • MySQL存储过程如何操作

    千次阅读 2021-03-04 00:08:16
    mysql在5.1之后增加了存储过程的功能, 存储过程运行在mysql内部,语句都已经编译好了,速度比sql更快. 存储过程mysql相当于shell和linux系统。如果你是程序员的话,那我告诉你存储过程实际上是一个方法,你只要...
  • Mysql 删除表数据的存储过程

    千次阅读 2019-07-25 21:24:00
    删除表数据的存储过程, 可用于定时任务, 以达到定时清理数据的需求 DROP PROCEDURE procedure_table_clean; CREATE PROCEDURE procedure_table_clean() BEGIN DECLARE no_more_record integer DEFAULT 0; ...
  • MySQL修改、删除存储过程和函数

    千次阅读 2019-09-02 16:49:04
    使用alter语句可以修改存储过程或函数的特性。 alter {procedure | function } sp_name {characteristic ...} 其中,sp_name参数表示存储过程或函数的名称,characteristic参数指定存储函数的特性,可能取的取值有...
  • 一、什么是存储过程二、存储过程怎么创建三、查看四、执行1、执行说明2、开始执行五、删除存储过程六、Mysql高版本:this is incompatible with sql_mode=only_full_group_by 问题 一、什么是存储过程 存储过程是一...
  • 图解MySql命令行创建存储过程

    千次阅读 2018-03-29 16:15:29
    创建第一个存储过程;事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将";"当做存储过程中的代码;调用一下,成功了;创建一个带输出参数的存储过程,返回book表的记录数;创建成功;如下的调用...
  • 存储过程 1 什么是存储过程 1.存储过程,带有逻辑的sql语句 2.之前的sql没有条件判断,没有循环 3.存储过程带上流程控制语句(if while) 2 存储过程特点 1)执行效率非常快!存储过程是在数据库的服务器端...
  • mysql存储过程中,使用select查询语句。代码:mysql> CREATE TABLE Employee(-> id int,-> first_name VARCHAR(15),-> last_name VARCHAR(15),-> start_date DATE,-> ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 236,175
精华内容 94,470
热门标签
关键字:

mysql删除所有存储过程

mysql 订阅