|
|
DB2中游标的使用方法以及存储过程的写法
( 2008/7/16 14:37 )
问题1: 什么时候才会发生not found异常 ,以及db2中sqlcode的值是如何变化的? 在db2中,一条select 语句也有可能发生not found异常,譬如: declare sqlcode integer default 0; declare sql_code integer default 0; declare classCode varchar(40) ; select app_class_code into classCode from kf_app_class where app_name='无效记录'; set sql_code=sqlcode; 如果此时没有检索到记录,那么sqlcode的值为100,有的话为0; 我们可以定义NOT FOUND 异常处理 declare sqlcode integer default 0; declare sql_code integer default 0; declare classCode varchar(40) ; begin declare continue handler for not found begin --注如果发生not found那么此时的sqlcode必定为100 set sql_code=sqlcode;/*在这里sqlcode的值为100;*/ --如果再次得到sqlcode的值那么它的值变为0 set sql_code=sqlcode;/*这里sqlcode变成了0,因为上一条语句执行成功了,那么sqlcode变成了0*/ end; select app_class_code into classCode from kf_app_class where app_name='无效记录'; set sql_code=sqlcode;/*同理此时如果没有取到数据,那么会进declare continue handler ,返回后sqlcode的值也为0*/ end; 所以我们可以通过两种方法来捕获和处理not found
|
·登录和优化IBM DB2的执行速度 (8-14) ·DB2数据库物化视图:MQT物化查询表的使用 (8-7) ·解决DB2数据库备份参数修改后的报错问题 (8-7) ·带你深入了解IBM DB2的通信与连接过程 (8-4) ·Window下修改DB2密码后不能启动的解决方法 (8-1) 热议文章·设备商围攻激进华为:它将摧毁TD (8-20) 评:1。华为的超低报价可以帮助中国电信压低其他各设备商的价格以降低本次整体采购成本,... ·联通致力于成国际一流宽带通信信息服务运营商 (8-15) ·联通预计两年投入1000亿元建设无线网络 (8-14) ·联通公告三点新建议 更名为联合网络通信 (8-14) ·实名制应尽早全国实行 (8-4) ·中电信中联通C网交割最新时间表曝光 (7-30) ·ITU制定相关标准移动通信有望互联网化 (7-30) ·微型虚拟示波器的设计与实现 (8-21) ·物流仓储管理的RFID读写器设计 (8-21) ·数据中心变出新天地 (8-21) ·光网络的动态特性与可扩展性 (8-21) ·帧中继技术与测试 (8-21) ·从黑客角度谈谈个人安全防范的问题 (8-21) |
|||||||||||||||
|