1.简介 : 逻辑处理一般不是一条语句组成,需要多条之间相互配合使用
             这时,存储过程就是为了以后使用而保存的的一条或多条Mysql语句的集合
2.为何 : 1)简单:将处理单元封装到了容易使用的单元中,简化了复杂重复操作
            2)安全:多次自行编写,出现的错误可能性就越多,而统一使用一个错误频率减少
            3)性能:存储过程执行较快
3.使用 : 存储过程的编写权限与调用权限分离
             调用存储过程 : CALL 存储过程名(参数)
4.编写 :  存储过程等级与表,库相当创建删除使用CREATE,DROP PRODUCE
             使用调用相当于表USE 直接加表名-->存储过程CALL + 存储过程名(参数)
              无参:     CREATE PRODUCE 存储过程名()
                            BEGIN
                                //存储过程体
                            END
                无参存储过程结果直接返回而不保存到OUT变量中,调用存储过程直接返回结果表
              有参:
                        1)存储过程相当于方法,有参数,返回值的相关定义
                        2)但存储过程没有之前的返回值定义,都表示在了参数表里
                        3)参数的数据类型类型: IN ,OUT,INOUT
                        4)创建时需定义变量OUT varName CHAR  IN no INT , 调用时使用实际定义的变量,输入的用实际值,OUT的用定义的变量@变量名以供存储调用完成时返回的结果值
                               eg: CALL  aaa(2000,@total)  
                                     SELECT @total
                        5)将结果赋给OUT变量  SELECT ... INTO total 
                        6)MySQL中实际自定义的变量变量名必须以@开头,无需int @total;,使用时直接给名,利用即可,创建时已经定义过了,使用调用时定义了什么类型调用时就是什么类型
            注意:使用命令行时,使用;分隔每个语句
                    而存储过程体中也有;所以此时需要重新定义语句分隔符 
                    开始前DELIMITER #
                    使用完DELIMITER ; 恢复
  •  存储过程体中需要中间变量,可以在体中定义变量
            DECLARE 变量名 数据类型(DEFAULT 默认值)
  • 存储过程体中含有智能的包含业务逻辑规则就务必使用到逻辑用语 条件,循环等
5.检查
        SHOW CREATE PRODUCE 存储过程名 相当于查看表的创建语句

MySQLl存储过程学习总结的更多相关文章

  1. SQL server存储过程学习

    由于之前使用 Linq to Sql来操作数据库,对于数据库的存储过程.函数等比较薄弱.乘着自己闲着的时候,就百度自学了一点存储过程,以防以后要用. 基础通俗易懂的存储过程通过 存储过程学习 ,然后自 ...

  2. mysql 5.0存储过程学习总结

    mysql存储过程的创建,删除,调用及其他常用命令 本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加). QQ群:   281442983 (点击链接加入群:http://jq.q ...

  3. Oracle存储过程学习使用

    存储过程创建语法: create or replace procedure 存储过程名(param1 in type,param2 out type) as 变量1 类型(值范围); 变量2 类型(值 ...

  4. MySQL存储过程学习笔记

    MySQL在5.0以前并不支持存储过程,这使得MySQL在应用上大打折扣.MySQL 5.0终于开始支持存储过程了. MySQL的关键字大小写通用.该学习笔记对关键字使用大写:变量名,表名使用小写. ...

  5. mySql-数据库之存储过程学习总结

    之前在工作中总是听别人提到存储过程,觉得是个很高深的东西,利用工作之余,看了下相关的知识,现将学习知识总结如下,希望可以为刚学习的人提供些许帮助. 开发环境:Navicat For Mysql. My ...

  6. sqlsever存储过程学习笔记

    1,创建数据表 use test create table money( id ,) primary key, money int, monetary_unity char ); 2,考虑到货币单位的 ...

  7. mysql存储过程学习

    一.存储过程的创建 语法: CREATE PROCEDURE sp_name (参数)合法的SQL语句 mysql> delimiter // mysql> CREATE PROCEDUR ...

  8. ORACLE存储过程学习

    存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 IS 3 BEGIN 4 NULL; 5 END; 行1: CREATE OR REPLACE PROCEDURE ...

  9. Oracle 存储过程学习

    转自:http://blog.chinaunix.net/uid-20495387-id-174394.html http://www.cnblogs.com/rootq/articles/11000 ...

随机推荐

  1. SpringBoot微服务电商项目开发实战 --- 分布式文件系统实现

    SpringBoot分布式开发系列文章已经持续了一段时间了,每一篇都有核心内容讲给大家.比如:分环境部署配置及服务端口号统一配置,子模块版本号管理及第三方jar依赖管理,单点登录实现,接口安全(签名+ ...

  2. NLP(十八)利用ALBERT提升模型预测速度的一次尝试

    前沿   在文章NLP(十七)利用tensorflow-serving部署kashgari模型中,笔者介绍了如何利用tensorflow-serving部署来部署深度模型模型,在那篇文章中,笔者利用k ...

  3. Mbp,一个用于学习.net core的开发框架

    Mbp(https://github.com/mbpframework/Mbp)是一个.net core 3的企业级web开发框架,是我个人用于学习.net core而发起的一个开源项目.这个借鉴了国 ...

  4. 基于Postman中的报错

    Postman中的报错: Could not get any response 错误 Could not get any response There was an error connecting ...

  5. linux部署.net Core项目

    首篇笔记,多多关照.方便回忆和给新手指导,大神绕道 首先在Linux系统部署.net Core项目首先准备一个Linux系统的服务器,百度云,阿里云都行. 1.net core 部署在Linux系统上 ...

  6. RF之简介

    robot framework 是一个通用型的自动测试框架 - 自动测试用例的实现方式 - 自动测试用例的开发支持 :  IDE.库 - 和用例管理系统的集成 - 测试执行:相关测试套件和测试用例的执 ...

  7. js 日期时间的格式化

    将日期时间转换为指定格式,如:YYYY-mm-dd HH:MM表示2019-06-06 19:45 function dateFormat(fmt, date) { let ret; let opt ...

  8. PHP+jQuery中国地图热点数据统计展示实例

    一款PHP+jQuery实现的中国地图热点数据统计展示实例,当鼠标滑动到地图指定省份区域,在弹出的提示框中显示对应省份的数据信息. 首先在页面中加一个div#tip,用来展示地图信息的提示框和#map ...

  9. PHP 字符串大全

    PHP字符串函数是核心的一部分.无需安装即可使用这些函数 函数名称 描述 addcslashes 以 C 语言风格使用反斜线转义字符串中的字符 addslashes 使用反斜线引用字符串 bin2he ...

  10. Kingfisher

    Kingfisher ima1.kf.setImage(with: url) 为了兼容macOS, IOS 通过协议定义了kf,实际上就是本身 KingfisherOptionsInfo 可以配置一些 ...