`
扬州老鬼
  • 浏览: 306279 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

SybaseIQ 存储过程异常处理

 
阅读更多
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
分享到:
评论

相关推荐

    sybaseIq参考手册,最全的手册

    手册将涵盖创建、调用和管理存储过程的方法,以及如何传递参数、处理返回值和异常。 ### 5. **查询优化** Sybase IQ以其高效的数据查询能力闻名。手册会讲解如何编写高效的SQL查询,包括索引的使用、查询计划的分析...

    Sybase IQ 15.4中文参考手册(系统管理 下册)

    5. 错误和异常处理:文档详细说明了过程中的错误处理,包括缺省错误处理、使用ONEXCEPTIONRESUME处理错误、异常处理程序的使用方法,以及如何在过程中使用EXECUTE IMMEDIATE语句。 6. 事务和保存点:在过程中,事务...

    SybaseIQ系统管理指南文档

    1. **安装过程**:Sybase IQ的安装包括服务器端和客户端组件,需要根据系统需求进行合理配置,确保硬件和操作系统兼容性。 2. **系统参数调优**:配置文件中包含各种系统参数,如内存分配、并发线程数等,通过调整...

    sybase iq用户定义的函数指南15.2

    通过配置Sybase IQ的日志记录选项,可以追踪UDFs的调用过程,并记录下执行过程中遇到的任何错误。 #### 在调试环境中启用完整跟踪 为了更深入地了解UDFs的行为,可以在调试环境中启用详细跟踪。 #### 查看Sybase ...

    sybase基本的 语法大全

    本压缩包“sybase基本语法大全”提供了一个全面的指南,适合初学者掌握Sybase IQ的基本操作,包括创建存储过程、视图以及触发器等关键概念。 首先,让我们深入理解Sybase SQL语法。SQL(结构化查询语言)是用于管理...

    sql存储过程

    Sybase数据库系统也提供了存储过程功能,`Sybase存储过程的建立和使用.doc`和`SybaseIQ存储过程学习笔记.docx`可能涵盖了在Sybase中创建和使用存储过程的基本步骤和注意事项,包括Sybase IQ这种特殊环境下的存储过程...

    SYBASE开发技术讲座

    - SYBASE的主要产品包括ASE(Adaptive Server Enterprise)、IQ(分析服务器)和OpenClient/OpenServer开发工具。 2. **SYBASE ASE** - ASE是SYBASE的核心数据库引擎,提供了事务处理、并发控制和高级查询优化等...

    Sybase数据库最新dll sybase32位和64位.net的程序集

    Sybase是一个知名的数据库管理系统,它提供了多种版本和产品,如 Adaptive Server Enterprise (ASE)、IQ、ASA等,广泛应用于企业级的数据存储和管理。.NET程序集则是微软.NET Framework的一部分,用于封装和提供.NET...

    sybase_jdbc_驱动

    7. **错误处理**:在编程过程中,你需要注意捕获和处理可能抛出的异常,如`SQLException`,确保程序的健壮性。 8. **兼容性**:确保你使用的jConnect版本与Sybase数据库服务器的版本兼容,否则可能会出现连接问题或...

    基于列式数据库的煤矿安全监测数据分析

    比如“Sybase2004SybaseIQ”可能指的是Sybase公司的数据仓库软件产品。50%~60%的数字可能表示某种性能指标的优化比例。OLAP指的是联机分析处理,它是一种用于复杂查询和数据分析的技术。SQL是结构化查询语言,是操作...

Global site tag (gtag.js) - Google Analytics