zoukankan      html  css  js  c++  java
  • MySQL的存储过程与函数——学习笔记

    存储过程和存储函数是在数据库中定义的一些被用户定义的SQL语句集合。

    存储过程可以被程序、触发器或者另一个存储过程调用。

    11.1存储过程与函数简介

    11.1.1概念

    一个存储过程是一个可编程的函数,可由SQL语句和一些特殊的控制结构组成。

    【优点】

    • l 增强SQL语言的功能和灵活性
    • l 允许标准组件是编程,可被多次调用,而不需重新编写
    • l 实现较快的执行速度
    • l 减少网络流量
    • l 作为安全机制
    • l 用户定义的一系列SQL语句的集合

    11.1.2 存储过程和函数的区别

    存储过程

    函数

    实现功能强大复杂,包括修改表

    针对性强,不能修改数据库

    可返回多个参数,参数类型有IN、OUT、INOUT

    只能返回一个值或者表对象,参数类型只有IN,声明时描述返回类型,且必须包含一个return语句

    可用非确定性函数

    不允许用非确定性函数

    独立执行

    作为查询语句中的一部分来调用

    11.2存储过程与函数操作

    11.2.1创建和使用存储过程和函数

    1.创建存储过程

    create procedure sp_name(输出类型,参数名称,参数类型)
    
    Call sp_name(输出类型,参数名称,参数类型)

     

     

    2.创建存储函数

    Create function sp_name()
    
    Returns type

    调用存储函数

    Select sp_name()

     

    3.Delimiter:设置指定的结束标志

    11.2.2变量

    1.声明

    declare str1,str2 varchar(6);

    2.Set 变量赋值

    Set str1=’abc’,str2=’exper’

     

     

    11.2.3游标

    游标的使用包括游标的声明,打开,使用,关闭。

    注意:游标在处理程序之前声明,在条件和变量之后声明

    1.声明

    Declare cursorname cursor for select_statement(select语句,返回一行或者多行数据)

    2.打开

    Open cursor_name

    3.读取数据

    Feach ^ into ^ = select into

    4.关闭

    Close cursor_name

    11.2.4查看存储过程和函数

    1.查看存储过程

    show procedure status like ‘cursor_name’;

    2.查看具体信息

    Show create function numofstudent;

    3.查看全部存储过程

    Select * from information_schema.routines where……

     

  • 相关阅读:
    微信小程序开发教程
    微信小程序的动画效果
    关于PHP中的全局变量global和$GLOBALS的不同区分
    爱心背景特效
    jQuery常用语法总结笔记
    微信HTML5页面设计建议
    学习Javascript闭包(Closure)
    转: web 页面加载速度优化实战100% 的飞跃提升
    javascript中slice() splice() concat()操作数组的方法
    Web前端开发规范文档你需要知道的事
  • 原文地址:https://www.cnblogs.com/liyanyinng/p/14051874.html
Copyright © 2011-2022 走看看