Sybase IQ数据库中,有两种异常信息,一种是警告warning、一种是错误error。
在存储过程中,对这两种异常信息做了不同的处理
1)在发生告警信息的时候,IQ会继续执行。
2)在发生error时,IQ提供了两种处理方式:
第一种是
默认方式,在默认方式下,数据库会将错误发生的SQLSTATE、SQLCODE返回到调用存储过程的环境中,比如说你调用存储过程所使用的客户端
第二种是
在创建SP的时候,可以指定,ON EXCEPTION RESUME 子句。如下:
CREATE PROCEDURE dba.sp_name()
ON EXCEPTION RESUME
使用ON EXCEPTION RESUME子句,过程会根据 ON_TSQL_ERROR 选项的设置采取不同的操作。如果 ON_TSQL_ERROR 设置为CONDITIONAL (缺省设置),则当下一条语句处理错误时,将继续执行下面的语句;否则将退出。
我写了一个简单的过程来测试的:
CREATE PROCEDURE "DBA"."OuterProc"() ON EXCEPTION RESUME
BEGIN
declare command_test exception for SQLSTATE '52003';
MESSAGE 'Hello from OuterProc.' TO CLIENT;
signal command_test; --模拟错误消息
if SQLSTATE=52003 then MESSAGE 'Hello from OuterProc.' TO CLIENT
end if;
END
CALL OuterProc();
结果输出为:
Hello from OuterProc.
Hello from OuterProc.
若将if 处理语句去掉,则会显示出错。
在IQ中,处理语句还包括:
• IF
• SELECT @variable =
• CASE
• LOOP
• LEAVE
• CONTINUE
• CALL
• EXECUTE
• SIGNAL
• RESIGNAL
• DECLARE
• SET VARIABLE
分享到:
相关推荐
手册将涵盖创建、调用和管理存储过程的方法,以及如何传递参数、处理返回值和异常。 ### 5. **查询优化** Sybase IQ以其高效的数据查询能力闻名。手册会讲解如何编写高效的SQL查询,包括索引的使用、查询计划的分析...
5. 错误和异常处理:文档详细说明了过程中的错误处理,包括缺省错误处理、使用ONEXCEPTIONRESUME处理错误、异常处理程序的使用方法,以及如何在过程中使用EXECUTE IMMEDIATE语句。 6. 事务和保存点:在过程中,事务...
1. **安装过程**:Sybase IQ的安装包括服务器端和客户端组件,需要根据系统需求进行合理配置,确保硬件和操作系统兼容性。 2. **系统参数调优**:配置文件中包含各种系统参数,如内存分配、并发线程数等,通过调整...
本压缩包“sybase基本语法大全”提供了一个全面的指南,适合初学者掌握Sybase IQ的基本操作,包括创建存储过程、视图以及触发器等关键概念。 首先,让我们深入理解Sybase SQL语法。SQL(结构化查询语言)是用于管理...
Sybase数据库系统也提供了存储过程功能,`Sybase存储过程的建立和使用.doc`和`SybaseIQ存储过程学习笔记.docx`可能涵盖了在Sybase中创建和使用存储过程的基本步骤和注意事项,包括Sybase IQ这种特殊环境下的存储过程...
- SYBASE的主要产品包括ASE(Adaptive Server Enterprise)、IQ(分析服务器)和OpenClient/OpenServer开发工具。 2. **SYBASE ASE** - ASE是SYBASE的核心数据库引擎,提供了事务处理、并发控制和高级查询优化等...
Sybase是一个知名的数据库管理系统,它提供了多种版本和产品,如 Adaptive Server Enterprise (ASE)、IQ、ASA等,广泛应用于企业级的数据存储和管理。.NET程序集则是微软.NET Framework的一部分,用于封装和提供.NET...
7. **错误处理**:在编程过程中,你需要注意捕获和处理可能抛出的异常,如`SQLException`,确保程序的健壮性。 8. **兼容性**:确保你使用的jConnect版本与Sybase数据库服务器的版本兼容,否则可能会出现连接问题或...
比如“Sybase2004SybaseIQ”可能指的是Sybase公司的数据仓库软件产品。50%~60%的数字可能表示某种性能指标的优化比例。OLAP指的是联机分析处理,它是一种用于复杂查询和数据分析的技术。SQL是结构化查询语言,是操作...