WEB开发网
开发学院数据库DB2 DB2 v7.2 中的高级 SQL 过程脚本编制 阅读

DB2 v7.2 中的高级 SQL 过程脚本编制

 2008-09-09 16:30:15 来源:WEB开发网   
核心提示: 4. 按如下执行脚本:chmod +x funcparam.cmd(只有在 UNIX 中才需要用它来使文件可执行)funcparam.cmd 1在上面的示例中,值 1 作为唯一参数传递给 funcparameter.cmd shell 脚本,DB2 v7.2 中的高级 SQL 过程脚本编制

4. 按如下执行脚本:

chmod +x funcparam.cmd (只有在 UNIX 中才需要用它来使文件可执行)
funcparam.cmd 1

在上面的示例中,值 1 作为唯一参数传递给 funcparameter.cmd shell 脚本。然后,这个 shell 脚本创建函数,并用提供的参数调用这个函数。接着,在完成之前,它通过删除(drop)这个函数来清除其自身。请注意:在 UNIX 脚本中,需要使用 connect 语句,因为 UNIX 中的 shell 脚本被派生(fork)到了它们自己的进程中。在 Windows 中不需要 connect 语句。

这里是上面示例的输出:

db2 -td@ -f funcparam.ddl
DB20000I The SQL command completed successfully.
db2 values getText(1)      
1
--------------------
one
1 record(s) selected.
db2 drop function getText(INT)
DB20000I The SQL command completed successfully.

使用 SQL 存储过程的示例

这里是与上面脚本等效的使用 SQL 存储过程的版本。(在机器上需要一个受支持的 C 编译器。更多信息,请参阅 DB2 Application Building Guide。)

1. 在文本文件中输入以下脚本,然后把这个文件保存为 procparam.ddl:

CREATE PROCEDURE getText (IN key INT)
LANGUAGE SQL
RESULT SETS 1
BEGIN
   DECLARE C1 CURSOR WITH RETURN FOR
      SELECT text FROM tab1 t WHERE t.id=key;
   -- leave cursor open so that result set is returned.
   OPEN C1;
END@

2. 创建名为 procparam.cmd 的第二个文件,它是一个获取参数的 shell 脚本,含有以下内容(使用适用于您平台的版本):

上一页  4 5 6 7 8 9 10  下一页

Tags:DB 高级 SQL

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