WEB开发网
开发学院数据库DB2 DB2 9.5 SQL Procedure Developer认证考试 735 准... 阅读

DB2 9.5 SQL Procedure Developer认证考试 735 准备,第1部分

 2010-02-16 14:59:34 来源:WEB开发网   
核心提示:下面的例子演示了这些方法的使用:清单 5. VALUE INTO 和 SELECT INTO 的例子VALUES 2 INTO v1;VALUES ‘TEST’ INTO var2;SELECT SUM(c1) INTO var1 FROM T1;SELECT POSSTR(‘MYT

下面的例子演示了这些方法的使用:

清单 5. VALUE INTO 和 SELECT INTO 的例子

VALUES 2 INTO v1;
VALUES ‘TEST’ INTO var2;
SELECT SUM(c1) INTO var1 FROM T1;
SELECT POSSTR(‘MYTEST’,’TEST’) INTO v1 FROM SYSIBM.SYSDUMMY1;

专用寄存器

专用寄存器(special register) 是 DBA 定义的一个存储块,供一个应用程序过程使用。寄存器中的值可以在SQL语句或 SQL PL语句中访问和引用。在IBM DB2 database for Linux, UNIX, and Windows Information Center 可以找到所有的专用寄存器(参见 参考资料)。

最常用的专用寄存器有:

CURRENT DATE

CURRENT TIME

CURRENT TIMESTAMP

CURRENT USER

CURRENT PATH

所有这些寄存器都可以通过在名称中加下划线来引用。例如,CURRENT_DATE。

下面的过程返回当前日期和时间:

清单 6. 返回当前日期和时间的过程

CREATE PROCEDURE get_datetime (out cdate date, out ctime time )
P1: BEGIN
  VALUES CURRENT DATE INTO cdate;
  VALUES CURRENT TIME INTO ctime;
END P1

执行后,该过程返回:

Name  Input  Output
cdate     2008-08-28
ctime     13:47:41  

有些专用寄存器的值可以通过 SET语句来更新。例如,为了更新正在访问的模式,需要像下面这样更改专用寄存器 CURRENT SCHEMA。

SET CURRENT_SCHEMA = MYSCHEMA

若要更改默认函数路径,则需要更新专用寄存器 CURRENT PATH。

游标

声明

SQL PL提供DECLARE cursor语句来定义一个游标,并提供其他语句来支持返回其他结果集和游标处理。

下面是游标声明的语法:

清单 7. 游标声明的语法

>>-DECLARE--cursor-name--CURSOR---------->
>--FOR--+-select-statement-+-------------><
 .-WITHOUT HOLD-.
|--+--------------+---------------------------------------------|
 '-WITH HOLD----'
           .-WITHOUT RETURN-------------.
|--+----------------------------+-------------------------------|
 |       .-TO CALLER-. |
           '-WITH RETURN--+-----------+-'

                     '-TO CLIENT-'

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

Tags:DB SQL Procedure

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