知识点三:MySQL存储过程和局部变量(4,5,6)

存储过程的创建:

    创建存储过程的步骤:

  1. 首先选中数据库
  2. 改变分隔符,不让分号作为执行结束的标记。(通常情况下,改变分隔符命令 DELIMITER $$)
  3. 创建存储过程:

CREATE PROCEDURE demo_inout_parameter()

      BEGIN

      SELECT "HELLOW";

     END;

     $$

4.恢复分隔符:DELIMITER ;

5. 调用存储过程:CALL demo_inout_parameter;

 --4 存储过程
DELIMITER //
CREATE PROCEDURE v_test1()
BEGIN
SELECT 'HELLO';
SELECT 'WORD';
END
// DELIMITER ;
CALL v_test1;

测试存储过程

  存储过程的三种参数:

     IN:输入参数

      表示该参数的值必须在调用存储过程之前指定,在存储过程中修改的不能被返回,

 --5 存储过程(2)(变量的定义)
--测试参数IN
DELIMITER //
CREATE PROCEDURE v_test3(IN p_int INT)
BEGIN
SELECT p_int;
SET p_int = p_int +1;
SELECT p_int;
END
// DELIMITER ;
SET @p_int =3;
CALL v_test3(@p_int); SELECT @p_int;

IN参数测试

    OUT:输出函数

      该值可在存储过程内部改变,并可返回。

 --6 存储过程(3)(参数类型)
--测试参数OUT
DELIMITER //
CREATE PROCEDURE v_test6(OUT v_out INT)
BEGIN
SELECT v_out;
SET v_out = 25;
SELECT v_out;
END
// DELIMITER ;
SET @v_out =4;
CALL v_test6(@v_out); SELECT @v_out;

OUT参数测试

    INOUT:输入输出参数

      该值可以在调用时指定,并可修改和返回。

删除存储过程:

    DROP PROCEDURE name;

局部变量:

创建存储过程时使用

定义局部变量的语法:
        DECLARE
变量名 数据类型 DEFAULT 默认值

MYSQL进阶学习笔记二:MySQL存储过程和局部变量!(视频序号:进阶_4-6)的更多相关文章

  1. MYSQL初级学习笔记二:数据表相关操作及MySQL存储引擎!(视频序号:初级_5,7-22|6)

    知识点三:数据表相关操作(5,7-22) --------------------------------整型--------------------------------- --测试整型 CREA ...

  2. Swoft2.x 小白学习笔记 (二) --- mysql、redis

    介绍swoft中 1.mysql. 2.Redis 一.mysql使用: 1.配置,在 app\bean.php文件中 'db' => [ 'class' => Database::cla ...

  3. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. python3.4学习笔记(二十五) Python 调用mysql redis实例代码

    python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...

  5. 基于【 MySql 】二 || mysql详细学习笔记

    mysql重点学习笔记 /* Windows服务 */ -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysql ...

  6. MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  7. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  8. MYSQL数据库学习笔记1

      MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...

  9. (1.3)学习笔记之mysql体系结构(C/S整体架构、内存结构、物理存储结构、逻辑结构)

    目录 1.学习笔记之mysql体系结构(C/S架构) 2.mysql整体架构 3.存储引擎 4.sql语句处理--SQL层(内存层) 5.服务器内存结构 6.mysql如何使用磁盘空间 7.mysql ...

随机推荐

  1. Netflix Ribbon源码设计错误的证据(附正确示例)

    我在之前一篇博客里https://www.cnblogs.com/yangfeiORfeiyang/p/9644254.html 里对Netflix Ribbon的Loadbalancer类源码设计的 ...

  2. 【Eclipse】eclipse部署web项目至本地的tomcat但在webapps中找不到

    clipse部署web项目至本地的tomcat但在webapps中找不到 1.发现问题 在我的 eclipse 中有个Dynamic Web Project(动态web项目),在本地的 tomcat ...

  3. BestCoder Round #29 1003 (hdu 5172) GTY's gay friends [线段树 判不同 预处理 好题]

    传送门 GTY's gay friends Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Ot ...

  4. jqeury设置元素屏幕居中

    jQuery.fn.center = function () { this.css(“position”,”absolute”); this.css(“top”, ( $(window).height ...

  5. 一起来学Spring Cloud | 第五章:熔断器 ( Hystrix)

    在微服务项目中,一个系统可以分割成很多个不同的服务模块,不同模块之间我们通常需要进行相互调用.springcloud中可以使用RestTemplate+Ribbon和Feign来调用(工作中基本都是使 ...

  6. iOS release版本去除NSLog打印信息

    因为NSLog的输出还是比较消耗系统资源的,而且输出的数据也可能会暴露出App里的保密数据,所以发布正式版时需要把这些输出全部屏蔽掉. 我们可以在发布版本前先把所有NSLog语句注释掉,等以后要调试时 ...

  7. Setup and Teardown Thread Group in Jmeter

    setup和teardown有点类似于每个测试用例开始和结束时要做的动作 A Thread Group is the starting point of any Jmeter Test Plan. A ...

  8. (C++ STL)list的实现

    #include <iostream> using namespace std; //採用迭代器和空间配置器所实现的双向链表的基本功能 template<class _Ty,clas ...

  9. Android菜单menu控件大全

    下载:http://www.see-source.com/androidwidget/list.html?type=16 Android-NewPopupMenu 使用PopupWindow实现的Po ...

  10. val();html();.text()区别 setInterval与setTimeout的区别

    val();html();.text()区别   对于innerHTML 属性,几乎所有的元素都有innerHTML属性,它是一个字符串,用来设置或获取位于对象起始和结束标签内的HTML.(获取HTM ...