zoukankan      html  css  js  c++  java
  • MySQL基础之存储过程

    学过之后却没有总结,今天好不容易有点时间来看看。

    存储过程的优势

    1.简化复杂的SQL语句,将多个SQL语句封装成为一个存储过程,可以在其中加上一些流程控制语句

    2.存储过程封装在数据库内部,编译之后直接调用,大大提高效率

    3.模块化编程,将一定功能的SQL语句封装,开发人员无需了解内部构造直接调用


    创建存储过程(Stored Procedure)

    delimiter //
    	create proceduce sp_test(
    	in id int,out num int )
    	begin
    	select sum(id) into num;
    	end
    	//
    delimiter;
    

    代码分析:

    1.首先SQL语句的结束标志改为//,便于区分SQL语句的结束和存储过程的结束,不会出现混乱,用完之后记得还原。

    2.关于参数有三种类型,in,out,inout

    3.select...into... 可以将数据通过num返回

    4.在内容中可以利用流程控制大大提升代码功能,之后会补充


    查看存储过程

    show proceduce status \G;

    show create produce sp_test\G;
    详细查看,可以看到具体过程中的代码内容

    删除存储过程

    drop procedure sp_test;

    执行操作过程

    call sp_test(1,@num);
    将返回值存储在num变量中,在out型变量前加上@
    直接可以使用select @num;来查看具体的值

    ---恢复内容结束---

    学过之后却没有总结,今天好不容易有点时间来看看。

    存储过程的优势

    1.简化复杂的SQL语句,将多个SQL语句封装成为一个存储过程,可以在其中加上一些流程控制语句
    2.存储过程封装在数据库内部,编译之后直接调用,大大提高效率
    3.模块化编程,将一定功能的SQL语句封装,提高可读性


    创建存储过程(Stored Procedure)

    delimiter // create proceduce sp_test( in id int,out num int ) begin select sum(id) into num; end // delimiter;

    代码分析:

    1.首先SQL语句的结束标志改为//,便于区分SQL语句的结束和存储过程的结束,不会出现混乱,用完之后记得还原。
    2.关于参数有三种类型,in,out,inout
    3.select...into... 可以将数据通过num返回
    4.在内容中可以利用流程控制大大提升代码功能,之后会补充


    查看存储过程

    show proceduce status \G;

    show create produce sp_test\G;
    详细查看,可以看到具体过程中的代码内容

    删除存储过程

    drop procedure sp_test;

    执行操作过程

    call sp_test(1,@num);
    将返回值存储在num变量中,在out型变量前加上@
    直接可以使用select @num;来查看具体的值

  • 相关阅读:
    如何提升自身实力
    python实现远程控制Linux
    python对象之间的关系
    python类的属性和方法
    简单阐述后端测试
    python操作数据库
    AppCrawler
    RobotFramework作业
    接口自动化测试
    CSS3 Backgrounds相关介绍
  • 原文地址:https://www.cnblogs.com/libowen/p/6086532.html
Copyright © 2011-2022 走看看