informix学习总结(3)

2018-12-29 18:07

例:

第四章存储过程

简单的存储过程

如何创建存储过程

CREATE PROCEDURE 过程名 (参数1,参数2,……) RETURNING 类型1, 类型2, ……;--返回值类型

DEFINE 变量1 类型1; DEFINE 变量2 类型2; …… …… …… ;

SELECT 表字段1, 表字段2, …… INTO变量1, 变量2, …… FROM 表名

WHERE 条件;--与参数有关

RETURN变量1,变量2,……;

END PROCEDURE;

数据传递

向存储过程传递数据

由存储过程返回数据

第一次调用过程返

事务处理

应付发生在数据修改过程中所发生的任何类型的错误的最好办法是使用事务日志。当发生任何错误时,你能够告诉数据库服务器回滚到原来的状态。下面是前一个例子使用事务的情况:

$ begin work; /*start the transaction*/ $ delete from items

where order_num = $onum;

del_result = sqlca.sqlcode; /*save two error */ del_isamno = aqlca.sqlerrd[1];/*...code numbers */

del_rowcnt = sqlca.sqlerrd[2]; /*...and count of rows */ if (del_result < 0 ) /* some problem, */

$ rollback work; /*...put everything back */ else /*everything worked ok, */ $ commit work; /*...finish transaction */

这个例子中关键的一点是程序在结束事务前先把重要的返回值存储在SQLCA中。其原因是和所有的SQL语句一样,ROLLABCK WORK和COMMIT WORK语句在SQLCA中设置返回代码。除非事先保存好错误代码,否则在错误发生后执行ROLLBACK WORK语句会清除原来的错误代码,也就不能向用户报告了。

使用事务的优点是无论发生了什么错误,数据库都处于一种可知的、可预计的状态。关于到底修改操作完成了多少的问题不会存在,要么全部完成,要么什么都没改。

错误处理

GEGIN

ON EXCEPTION IN (-206,--table doesn’t exist

-207—column doesn’t exist )SET err_num

END EXCEPTION WITH RESUME

自定义异常


informix学习总结(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中南大学_中级财务会计作业及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: