MySQL存储过程部分解释
2011-11-16 21:05
246 查看
20111116学习总结;
存储过程是数据库存储的一个重要的功能,但是MySQL在5.0以前并不支持存储过程,这使得MySQL在应用上大打折扣。好在MySQL 5.0终于开始已经支持存储过程,这样即可以大大提高数据库的处理速度,同时也可以提高数据库编程的灵活性。
格式
MySQL存储过程创建的格式:CREATE PROCEDURE过程名 ([过程参数[,...]]) procedure
[特性 ...] 过程体
这里先举个例子:
1. mysql> DELIMITER //
2. mysql> CREATE PROCEDURE proc1(OUT s int)
3. -> BEGIN
4. -> SELECT COUNT(*) INTO s FROM user;
5. -> END
6. -> //
7. mysql> DELIMITER ;
参数
MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,形式如:
CREATE PROCEDURE([[IN |OUT |INOUT ] 参数名 数据类形...])
IN 输入参数 : 表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值
OUT 输出参数 : 该值可在存储过程内部被改变,并可返回
INOUT 输入输出参数 : 调用时指定,并且可被改变和返回
. IN参数例子
创建:
1. mysql > DELIMITER //
2. mysql > CREATE PROCEDURE demo_in_parameter(IN p_in int)
3. -> BEGIN
4. -> SELECT p_in; /*查询输入参数*/
5. -> SET p_in=2; /*修改*/
6. -> SELECT p_in; /*查看修改后的值*/
7. -> END;
8. -> //
mysql > DELIMITER ;
OUT参数例子
创建:
1. mysql > DELIMITER //
2. mysql > CREATE PROCEDURE demo_out_parameter(OUT p_out int)
3. -> BEGIN
4. -> SELECT p_out;/*查看输出参数*/
5. -> SET p_out=2;/*修改参数值*/
6. -> SELECT p_out;/*看看有否变化*/
7. -> END;
8. -> //
9. mysql > DELIMITER ;
. INOUT参数例子
创建:
1. mysql > DELIMITER //
2. mysql > CREATE PROCEDURE demo_inout_parameter(INOUT p_inout int)
3. -> BEGIN
4. -> SELECT p_inout;
5. -> SET p_inout=2;
6. -> SELECT p_inout;
7. -> END;
8. -> //
9. mysql > DELIMITER ;
注释
MySQL存储过程可使用两种风格的注释
双模杠:--
该风格一般用于单行注释
风格:/* 注释内容 */ 一般用于多行注释
MySQL存储过程部分解释:
关于MySQL的存储过程存储过程是数据库存储的一个重要的功能,但是MySQL在5.0以前并不支持存储过程,这使得MySQL在应用上大打折扣。好在MySQL 5.0终于开始已经支持存储过程,这样即可以大大提高数据库的处理速度,同时也可以提高数据库编程的灵活性。
格式
MySQL存储过程创建的格式:CREATE PROCEDURE过程名 ([过程参数[,...]]) procedure
[特性 ...] 过程体
这里先举个例子:
1. mysql> DELIMITER //
2. mysql> CREATE PROCEDURE proc1(OUT s int)
3. -> BEGIN
4. -> SELECT COUNT(*) INTO s FROM user;
5. -> END
6. -> //
7. mysql> DELIMITER ;
参数
MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,形式如:
CREATE PROCEDURE([[IN |OUT |INOUT ] 参数名 数据类形...])
IN 输入参数 : 表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值
OUT 输出参数 : 该值可在存储过程内部被改变,并可返回
INOUT 输入输出参数 : 调用时指定,并且可被改变和返回
. IN参数例子
创建:
1. mysql > DELIMITER //
2. mysql > CREATE PROCEDURE demo_in_parameter(IN p_in int)
3. -> BEGIN
4. -> SELECT p_in; /*查询输入参数*/
5. -> SET p_in=2; /*修改*/
6. -> SELECT p_in; /*查看修改后的值*/
7. -> END;
8. -> //
mysql > DELIMITER ;
OUT参数例子
创建:
1. mysql > DELIMITER //
2. mysql > CREATE PROCEDURE demo_out_parameter(OUT p_out int)
3. -> BEGIN
4. -> SELECT p_out;/*查看输出参数*/
5. -> SET p_out=2;/*修改参数值*/
6. -> SELECT p_out;/*看看有否变化*/
7. -> END;
8. -> //
9. mysql > DELIMITER ;
. INOUT参数例子
创建:
1. mysql > DELIMITER //
2. mysql > CREATE PROCEDURE demo_inout_parameter(INOUT p_inout int)
3. -> BEGIN
4. -> SELECT p_inout;
5. -> SET p_inout=2;
6. -> SELECT p_inout;
7. -> END;
8. -> //
9. mysql > DELIMITER ;
注释
MySQL存储过程可使用两种风格的注释
双模杠:--
该风格一般用于单行注释
风格:/* 注释内容 */ 一般用于多行注释
相关文章推荐
- MySQL存储过程编程教程读书笔记-第二章MySQL存储过程编程指南-存储过程部分
- Mysql存储过程的创建,调用和三种参数类型的解释说明
- MYSQL的存储过程、变量、函数及部分简单优化(非常有用,有存储过程+光标实例)
- mysql存储过程实例(一)---------------图书管理系统部分查找
- 【MySQL】存储过程初步探索
- MySQL动态创建表,数据分表的存储过程
- mysql查询存储过程和函数、视图、触发器
- mybatis mysql 关于调用存储过程获取查询结果
- MySQL 存储过程中使用游标
- mysql存储过程语法及实例
- MySQL 存储过程初研究
- mysql查看所有存储过程,函数,视图,触发器,表,分页
- MySQL存储过程之事务管理
- MySQL存储过程详解 mysql 存储过程
- MySQL 存储过程的基本用法
- MySQL 5.0 新特性教程 存储过程:第二讲
- MySQL存储过程详解 mysql 存储过程(转:http://blog.sina.com.cn/s/blog_52d20fbf0100ofd5.html)
- mysql存储过程插入固定数量测试数据
- mysql 存储过程及常用函数
- mysql存储过程存储函数