首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL存储过程_MySQL创建存储过程

什么是存储过程 存储过程就是事先经过编译并存储在数据库中的一段 SQL 语句的集合; 为什么使用存储过程 调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的...([ 参数 ]); 调用上面的存储过程 call p1(); 3、查看存储过程 SHOW CREATE PROCEDURE 存储过程名称 ; -- 查询某个存储过程的定义 4、删除存储过程 DROP...delimiter 指定SQL语句的结束符 存储过程中的变量 在MySQL中,变量一般可分为分为三种类型: 系统变量、用户定义变量、局部变量; 一、系统变量 系统变量是MySQL服务器系统自身提供的...,也可以作为输出参数 1、语法定义 CREATE PROCEDURE 存储过程名称 ([ IN/OUT/INOUT 参数名 参数类型 ]) BEGIN -- SQL END; 将上面的案例进行简单改造...循环语句在编程中经常被用到,常用于对批量的数据进行循环处理,在mysql存储过程中,也提供了几种常用的循环语句,包括:while循环,repeat循环,和loop循环; 1、while循环语句 while

22.2K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQLMySQL 存储过程

    MySQL 存储过程(了解) 1 什么是存储过程 MySQL 5.0 版本开始支持存储过程 存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据 库对象。...,数据库交互更加快捷(应用服务器,与 数据库服务器不在同一个地区) 缺点:    在互联网行业中,大量使用MySQLMySQL存储过程与Oracle的相比较弱,所以较少使用,并且互联网行业需求变化较快也是原因之一...# 删除 id为2的商品 CALL goods_proc02(2) 方式3 1) 变量赋值 SET @变量名=值 2) OUT 输出参数:表示存储过程向调用者传出值 OUT 变量名 数据类型 3) 创建存储过程...VALUES(o_oid,o_gid,o_price); -- 设置 num的值为 1 SET @out_num = 1; -- 返回 out_num的值 SELECT...@out_num; END $$ 4) 调用存储过程 # 调用存储过程插入数据,获取返回值 CALL orders_proc(1,2,30,@out_num); 发布者:全栈程序员栈长,转载请注明出处

    16.1K10

    MySQL 存储过程

    1.1 简介 1.1.1 概述   MySQL 5.0 版本开始支持存储过程存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。...④ 存储过程可以用在数据检验,强制实行商业逻辑等。 ☞ 缺点  ① 存储过程,往往定制化于特定的数据库上,因为支持的编程语言不同。当切换到其他的数据库系统时,需要重写原有的存储过程。  ...test values (id, money); end; Query OK, 0 rows affected (0.06 sec) # out 参数 mysql> create procedure...test1(out a int, out b int) begin set a = 2 * 2; select count(*) into b from test; end; Query...1.2.3 调用存储过程 ☞ 语法 call 存储过程名称(参数列表); ☞ 示例 mysql> call showtest; +----+-------+ | id | money | +----+-

    13.4K31

    MySQL存储过程

    MySQL存储过程 存储过程是数据库的一个重要的功能,MySQL 5.0以前并不支持存储过程,这使得MySQL在应用上大打折扣。...MySQL存储过程的创建 语法 CREATE PROCEDURE 过程名([[IN|OUT|INOUT] 参数名 数据类型[,[IN|OUT|INOUT] 参数名 数据类型…]]) [特性 ...]...MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT: IN参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值 OUT:该值可在存储过程内部被改变...注释 MySQL存储过程可使用两种风格的注释: 双杠:--,该风格一般用于单行注释 C风格: 一般用于多行注释 MySQL存储过程的调用 用call和你过程名以及一个括号,括号里面根据需要,加入参数...MySQL存储过程的控制语句 变量作用域 内部变量在其作用域范围内享有更高的优先权,当执行到end时,内部变量消失,不再可见了,在存储 过程外再也找不到这个内部变量,但是可以通过out参数或者将其值指派给会话变量来保存其值

    13.7K30

    MySQL存储过程

    2、简化操作 1-2、语法: CREATE PROCEDURE 存储过程名(参数列表) BEGIN 存储过程体(一组合法的SQL语句) END 注意: 1、参数列表包含三部分 参数模式 参数名...该参数既可以作为输入又可以作为输出,也就是该参数既需要传入值,又可以返回值 2、如果存储过程体仅仅只有一句话,begin end可以省略 存储过程体中的每条sql语句的结尾要求必须加分号。...存储过程的结尾可以使用 delimiter 重新设置 语法: delimiter 结束标记 案例: delimiter $ 二、存储过程创建和使用语法 2-1、语法 CALL 存储过程名(实参列表);...模式参数存储过程案例 #案例1:根据输入的女神名,返回对应的男神名 CREATE PROCEDURE myp6(IN beautyName VARCHAR(20),OUT boyName VARCHAR...create procedure 存储过程名 SHOW CREATE PROCEDURE p1; #错误演示 DESC p1; 存储过程案例 #一、创建存储过程实现传入用户名和密码,插入到admin

    8.8K10

    MySQL 存储过程

    存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数...存储过程是数据库中的一个重要对象。在数据量特别庞大的情况下利用存储过程能达到倍速的效率提升 一、存储过程概述 1.1、什么是存储过程 存储过程是数据库中的一个重要对象。...存储过程是在数据库系统中,一组为了完成特定功能的SQL 语句集。存储过程存储在数据库中,一次编译后,到处运行。不需要再次编译,用户通过指定存储过程的名字并传递参数(如果该存储过程带有参数)来执行。...存储过程可以被重复使用。 存储过程只连接一次数据库,sql语句在访问多张表时,连接多次数据库。 存储的程序是安全的。存储过程的应用程序授予适当的权限。...格式: create procedure 过程名([IN|OUT|INOUT] 参数名 参数数据类型 ) begin ...... end; 注意: in:传入参数 out:传出参数 inout:可以传入也可以传出

    37.2K20

    mysql存储过程

    注意:每执行一句sql语句,就会连接mysql服务器一次。 3)“存储过程的含义”:一组预先编译好的sQL语句的集合。...3)delimiter定义存储过程的结束标记   在mysql语句中,由于每一个语句后面必须要;结尾,而存储过程也需要一个符号结尾,为了防止混淆,我们需要在创建存储过程之前,先使用delimiter定义一个存储过程的结束标记...call myp3('john','8888'); 效果如下: 5、带out模式的存储过程 1)案例一:创建一个存储过程,根据女神名,返回对应的男神名。...代码如下: -- 创建一个存储过程 delimiter $ create procedure myp4(in beautyName varchar(20),out boyName varchar(20)...代码如下: -- 创建一个存储过程 delimiter $ create procedure pro2(in id int,out beautyName varchar(20),out beautyPhone

    11.7K10

    MySQL存储过程

    目录: 存储过程创建 概念 优点 创建 存储过程调用 存储过程演示 删除存储过程 查看存储过程 修改存储过程 存储过程创建 存储过程的概念 存储过程是一组已经预先编译好的SQL...out:声明该参数为一个输出型参数,(类似于Java的返回值),在一个存储过程中可以定义多个out类型的参数。 inout:声明该参数既可以为输入型参数,也可以为输出型参数。...call pro_insert3('uname','男'); 带in,out参数的存储过程 判断用户登录,如果用户名和密码输入正确登录成功,否则登录失败。...#创建存储过程 delimiter $ create procedure pro_login( in name varname(20), in pwd varchar(20), out result varchar...存储过程名称; 查看存储过程 语法: show create procedure 存储过程名称; 修改存储过程 目前,MySQL还不提供对已存在的存储过程的代码修改。

    11.8K10

    MySQL存储过程

    文章目录 为什么使用存储过程 书写基本格式 关于参数 存储过程中开启事务 返回多个结果集 设置变量 存储过程:一段SQL语句的集合 为什么使用存储过程 1、解耦合。...但是存储过程只需要一次编译,多次运行。 4、提高系统安全性。存储过程可以使用权限控制,而且参数化的存储过程可以有效防止注入攻击,保证了其安全性。 5、重用性强。一次编写,随处调用。...(传入值可以是字面量或变量) OUT输出参数:表示过程向调用者传出值(可以返回多个值)(传出值只能是变量) INOUT输入输出参数:既表示调用者向过程传入值,又表示过程向调用者传出值(值只能是变量)...一般我只用 IN,out 什么?...select 就可以返回结果了,还要 select ··· into out_参数?

    7.9K30

    Mysql存储过程

    存储过程简单来说,就是为以后的使用而保存的一条或多条MySQL语句的集合。可将其视为批文件。虽然他们的作用不仅限于批处理。  ...许多数据库管理员限制存储过程的创建,允许用户使用存储过程,但不允许创建存储过程  存储过程是非常有用的,应该尽可能的使用它们  执行存储过程 MySQL存储过程的执行为调用...BEGIN和END语句用来限定存储过程体,过程体本身是个简单的SELECT语句  在MYSQL处理这段代码时会创建一个新的存储过程productpricing。没有返回数据。...因为这段代码时创建而不是使用存储过程Mysql命令行客户机的分隔符  默认的MySQL语句分隔符为分号 ; 。Mysql命令行实用程序也是 ; 作为语句分隔符。...关键字OUT指出相应的参数用来从存储过程传给一个值(返回给调用者)。MySQL支持IN(传递给存储过程)、OUT(从存储过程中传出、如这里所用)和INOUT(对存储过程传入和传出)类型的参数。

    6.1K30

    mysql存储过程菜鸟教程_mysql存储过程是什么

    本文介绍关于在MySQL存储过程游标使用实例,包括简单游标使用与游标循环跳出等方法 例1、一个简单存储过程游标实例 DELIMITER $$ DROP PROCEDURE IF EXISTS getUserInfo...$$ CREATE PROCEDURE getUserInfo(in date_day datetime) — — 实例 — 存储过程名为:getUserInfo — 参数为:date_day日期格式...存储过程游标循环跳出现 在MySQL存储过程中,游标操作时,需要执行一个conitnue的操作.众所周知,MySQL中的游标循环操作常用的有三种,LOOP,REPEAT,WHILE.三种循环,方式大同小异...存储过程,需要循环结构有个名称,其他都是一样的....上述存储过程的例子中只使用了一个游标,那么如果要使用两个或者更多游标怎么办,其实很简单,可以这么说,一个怎么用两个就是怎么用的。

    4.7K10

    SQL Server 存储过程_mysql存储过程教程

    **什么是存储过程:** 存储过程(Procedure)是一组为了完成特定功能的Sql语句集合,相当于C#中的方法,只编译一次,经编译后存储在数据库中,用户可以通过制定的存储过程名称并给出所需参数来执行...存储过程的优点: 模块化编程 写一次存储过程,可以多次从应用程序的不同部分调用,重复使用 性能 存储过程提供更快的代码执行,减少了网络流量负担。...学习成本高,DBA一般都擅长写存储过程,但并不是每个程序员都能写好存储过程,除非你的团队有较多的开发人员熟悉写存储过程,否则后期系统维护会产生问题。...MyPage @n,@p out--调用存储过程 select @p 修改(删除)存储过程 alter proc proc_name as begin   --sql语句 end   --删除存储过程...,@countye out,@re out select @countsum,@countye,@re VS调用存储过程实现分页: private int a = 1;//第几页 private int

    5.5K30
    领券