php mysql存储过程写法_mysql存储过程写法

都说不懂数据库的程序员不是合格的程序员,那么你知道MySQL存储过程应该怎么写吗?

ec8655b5e3751aa6cbc990e98935641e.png

MySQL存储过程写法

可以使用 CREATE PROCEDURE 语句创建存储过程。

数据库存储过程语法格式如下:

CREATE PROCEDURE 过程名([[IN|OUT|INOUT] 参数名 数据类型[,[IN|OUT|INOUT] 参数名 数据类型…]]) [特性 ...] 过程体

DELIMITER //

CREATE PROCEDURE myproc(OUT s int)

BEGIN

SELECT COUNT(*) INTO s FROM students;

END

//

DELIMITER ;

例:创建一个简单的存储过程

-- ----------------------------

-- Procedure structure for `proc_adder`

-- ----------------------------DROP PROCEDURE IF EXISTS `proc_adder`;

DELIMITER ;;CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_adder`(IN a int, IN b int, OUT sum int)BEGIN

#Routine body goes here...

DECLARE c int;

if a is null then set a = 0;

end if;

if b is null then set b = 0;

end if;set sum = a + b;END

;;

DELIMITER ;

MySQL的优点

1. 它使用的核心线程是完全多线程,支持多处理器。

2. 有多种列类型:1、2、3、4、和8字节长度自有符号/无符号整数、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、 TIMESTAMP、YEAR、和ENUM类型。

3. 它通过一个高度优化的类库实现SQL函数库并像他们能达到的一样快速,通常在查询初始化后不该有任何内存分配。没有内存漏洞。

4. 全面支持SQL的GROUP BY和ORDER BY子句,支持聚合函数(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN())。你可以在同一查询中混来自不同数据库的表。

5. 支持ANSI SQL的LEFT 0UTER JOIN和ODBC。

6. 所有列都有缺省值。你可以用INSERT插入一个表列的子集,那些没用明确给定值的列设置为他们的决省值。

7. MySQL可以工作在不同的平台上。支持C、C++、Java、Perl、PHP、Python和TCL API。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值