WEB开发网
开发学院数据库MySQL MySQL5.0新特性教程 存储过程:第三讲 阅读

MySQL5.0新特性教程 存储过程:第三讲

 2007-04-22 10:55:57 来源:WEB开发网   
核心提示: 这里是一个包含IF语句的过程,里面有两个IF语句,MySQL5.0新特性教程 存储过程:第三讲(3),一个是IF语句END IF,另一个是IF语句ELSE语句END IF,因此条件"if variable1 = 0"为假,IF……END IF

这里是一个包含IF语句的过程。里面有两个IF语句,一个是IF语句END IF,另一个是IF语句ELSE语句END IF。我们可以在这里使用复杂的过程,但我会尽量使其简单让你能更容易弄清楚。

2.

CALL p12 (0) //

我们调用这个过程,传入值为0,这样parameter1的值将为0。

3.

CREATE PROCEDURE p12 (IN parameter1 INT)
BEGIN
DECLARE variable1 INT;
SET variable1 = parameter1 + 1; <--
IF variable1 = 0 THEN
INSERT INTO t VALUES (17);
END IF;
IF parameter1 = 0 THEN
UPDATE t SET s1 = s1 + 1;
ELSE
UPDATE t SET s1 = s1 + 2;
END IF;
END; //

这里变量variable1被赋值为parameter1加1的值,所以执行后变量variable1为1。

4.

CREATE PROCEDURE p12 (IN parameter1 INT)
BEGIN
DECLARE variable1 INT;
SET variable1 = parameter1 + 1;
IF variable1 = 0 THEN <--
INSERT INTO t VALUES (17);
END IF;
IF parameter1 = 0 THEN
UPDATE t SET s1 = s1 + 1;
ELSE
UPDATE t SET s1 = s1 + 2;
END IF;
END; //

因为变量variable1值为1,因此条件"if variable1 = 0"为假,

IF

……

END IF

被跳过,没有被执行。

5.

CREATE PROCEDURE p12 (IN parameter1 INT)
BEGIN
DECLARE variable1 INT;
SET variable1 = parameter1 + 1;
IF variable1 = 0 THEN
INSERT INTO t VALUES (17);
END IF;
IF parameter1 = 0 THEN <--
UPDATE t SET s1 = s1 + 1;
ELSE
UPDATE t SET s1 = s1 + 2;
END IF;
END; //

上一页  1 2 3 4 5 6 7 8  下一页

Tags:MySQL 特性 教程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接