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. 剑指offer题解(Java版)

    剑指offer题解(Java版) 从尾到头打印链表 题目描述 输入一个链表,按从尾到头的顺序返回一个ArrayList. 方法1:用一个栈保存从头到尾访问链表的每个结点的值,然后按出栈顺序将各个值存入 ...

  2. python安装pymssql等包时出现microsoft visual c++ 14.0 is required问题无需下载visualcppbuildtools的解决办法

    如题,在练习python安装一些包时,出现了microsoft visual c++ 14.0 is required问题.网上有很多资料:一是下载对应的.whl文件,然后pip install安装: ...

  3. IT兄弟连 HTML5教程 响应式布局实例

    在学习Media Queries模块前,先通过一个响应式布局实例来了解一下响应式布局和Media Queries模块的简单应用.在本例中,使用HTML5的结构元素定义了5个盒子.当浏览器窗口尺寸不同时 ...

  4. SpringCloudConfig对称加密 yml配置文件while parsing a block mapping

    错误的配置!!! #-----------------db------------------ mybatis: type-aliases-package: com.book.product.pojo ...

  5. CefSharp 修复Demo无法在其它路径下启动问题

    CefSharp编译后,在直接点击打开CefSharp.Wpf.Example.exe,启动没问题但是复制demo包到其它路径下,无法打开demo.原因:代码中含有相对路径下的资源文件引用. CefS ...

  6. winform删除dataGridView列报异常:System.IndexOutOfRangeException:“索引 7 没有值

    winform界面如下: using System; using System.Collections.Generic; using System.ComponentModel; using Syst ...

  7. SpringMVC框架之第四篇

    5.SpringMVC异常处理 5.1.异常分类 1.可预知异常: Java编译时可检测异常,例如:IOException.SQLException等. 自定义异常(继承Exception父类的自定义 ...

  8. laravel开发大型电商网站之异常设计思路分析

    令人讨厌的异常 提起异常,大家都很反感,当信心满满的写完一段代码,刷新页面发现上面写着大大的 Exception 是最心烦的时候了.模块给领导演示的时候,如果报了异常,也是最让人崩溃的时候了. 在一般 ...

  9. PHP 字符串大全

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

  10. android studio 3.4配置Android -jni 开发基础

    首先下载配置android studio ndk 1.打开sdkManager下载CMake和LLDB 2.配置ndk 项目新建 项目建立完毕后,工程目录如下,cpp文件夹是系统自动生成的 3.自定义 ...