DB2 v7.2 中的高级 SQL 过程脚本编制
2008-09-09 16:30:15 来源:WEB开发网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 脚本,含有以下内容(使用适用于您平台的版本):
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接