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。

已标记关键词 清除标记
表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页