WEB开发网
开发学院数据库MySQL MySQL 5.0新特性教程 存储过程:第二讲 阅读

MySQL 5.0新特性教程 存储过程:第二讲

 2007-04-22 10:55:52 来源:WEB开发网   
核心提示: 现在我们就可以调用一个存储过程了,你所需要输入的全部就是CALL和你过程名以及一个括号再一次强调,MySQL 5.0新特性教程 存储过程:第二讲(2),括号是必须的当你调用例子里面的p1过程时,结果是屏幕返回了t表的内容mysql> CALL p1() //+--+| s1 |+--

现在我们就可以调用一个存储过程了,你所需要输入的全部就是CALL和你过程名以及一个括号再一次强调,括号是必须的当你调用例子里面的p1过程时,结果是屏幕返回了t表的内容

mysql> CALL p1() //
+------+
| s1 |
+------+
| 5 |
+------+
1 row in set (0.03 sec)
Query OK, 0 rows affected (0.03 sec)

因为过程中的语句是

"SELECT * FROM t;"

2. Let me say that again, another way.

其他实现方式

mysql> CALL p1() //

和下面语句的执行效果一样:

mysql> SELECT * FROM t; //

所以,你调用p1过程就相当于你执行了下面语句:

"SELECT * FROM t;"

好了,主要的知识点"创建和调用过程方法"已经清楚了。我希望你能对自己说这相当简单。但是很快我们就有一系列的练习,每次都加一条子句,或者改变已经存在的子句。那样在写复杂部件前我们将会有很多可用的子句。

Characteristics Clauses 特征子句

1.

CREATE PROCEDURE p2 ()
LANGUAGE SQL <--
NOT DETERMINISTIC <--
SQL SECURITY DEFINER <--
COMMENT 'A Procedure' <--
SELECT CURRENT_DATE, RAND() FROM t //

这里我给出的是一些能反映存储过程特性的子句。子句内容在括号之后,主体之前。这些子句都是可选的,他们有什么作用呢?

2.

CREATE PROCEDURE p2 ()
LANGUAGE SQL <--
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT 'A Procedure'
SELECT CURRENT_DATE, RAND() FROM t //

很好,这个LANGUAGE SQL子句是没有作用的。仅是为了说明下面过程的主体使用SQL语言编写。这条是系统默认的,但你在这里声明是有用的,因为某些DBMS(IBM的DB2)需要它,如果你关注DB2的兼容问题最好还是用上。此外,今后可能会出现除SQL外的其他语言支持的存储过程。

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

Tags:MySQL 特性 教程

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