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】让错误处理重新由web服务器接管

    其实web服务器是会处理错误的 在web.xml还是随处可见的年代时(确实有点老黄历了),下面的这些配置应该都不陌生. 根据错误代码处理错误,如下图01: 根据异常类型处理错误,如下图02: 不过我们 ...

  2. 电商设计V1(一):软件工程设计

    软件工程设计的方式方法 多视图法: 全面分析软件方方面面的问题 尽早地发现和排除项目风险与不确定因素 从不同角度去展现要设计的软件系统 为项目进行不同的干系人提供指导: 逻辑架构描述系统功能,并指导系 ...

  3. Python提升“技术逼格”的6个方法

    1 列表生成式和生成器 from numpy import randoma = random.random(10000) lst = []for i in a: lst.append(i * i) # ...

  4. Cesium专栏-百度地图加载(附源码下载)

    Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精度,渲染质量以 ...

  5. Android 项目优化(七):阿里巴巴Android开发手册整理总结

    本来之前觉得Android项目优化系列的文章基本整理完毕了,但是近期看了一下<阿里Android开发手册>有了很多收获,想再整理一篇,下面就开始吧. 先在这里列一下之前整理的文章及链接: ...

  6. IOS弓箭传说的插件开发

    1.导出ipa进行解压后,定位到执行程序archero,ida加载后,发现很多都是sub_xxx开头的. 2.搜索资料后,原来Unity编写的程序,可以使用Il2CppDumper进行符号表还原. 下 ...

  7. java8新特性,你有用起来了吗?(精编)

      2019年9月19日java13已正式发布,感叹java社区强大,经久不衰.由于国内偏保守,新东西总要放一放,让其他人踩踩坑,等稳定了才会去用.并且企业目的还是赚钱,更不会因为一个新特性去重构代码 ...

  8. 【30天自制操作系统】day04:C语言与目前执行流程图

    用 C 语言直接写入内存 原来依靠汇编 void io_hlt(void); void write_mem8(int addr, int data); void HariMain(void){ int ...

  9. C++之typename和typedef关键字

    1. typename的作用 template <typename Distance> class KDTreeIndex : public NNIndex<Distance> ...

  10. 分布式图数据库 Nebula RC2 发布:增强了 CSV Importer 功能

    Nebula Graph 是开源的分布式图数据库,可应用于知识图谱.社交推荐.风控.IoT 等场景. 本次 RC2 主要新增 GO FROM ... REVERSELY 和 GROUP BY 等语句, ...