报错信息:
11:17:53,375 ERROR [AlarmCoreDAO] 告警取消错误:
com.sybase.jdbc2.jdbc.SybSQLException: Stored procedure 'sfa_ams_handle_can' may be run only in unchained transaction mode. The 'SET CHAINED OFF' command will cause the current session to use unchained transaction mode.
at com.sybase.jdbc2.tds.Tds.processEed(Tds.java:3281)
at com.sybase.jdbc2.tds.Tds.nextResult(Tds.java:2548)
at com.sybase.jdbc2.jdbc.ResultGetter.nextResult(ResultGetter.java:69)
at com.sybase.jdbc2.jdbc.SybStatement.nextResult(SybStatement.java:220)
at com.sybase.jdbc2.jdbc.SybStatement.nextResult(SybStatement.java:203)
at com.sybase.jdbc2.jdbc.SybStatement.executeLoop(SybStatement.java:1785)
at com.sybase.jdbc2.jdbc.SybCallableStatement.execute(SybCallableStatement.java:156)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.execute(WrappedPreparedStatement.java:276)
at com.boco.alarm.commom.service.dao.AlarmCoreDAODnmsMutiFilterImpl.cancelAlarms(AlarmCoreDAODnmsMutiFilterImpl.java:262)
at com.boco.alarm.common.service.impl.CancelAlarmService.process(CancelAlarmService.java:69)
at com.boco.alarm.common.service.ServiceListenerFactory$ServiceListenerImpl.run(Unknown Source)
at java.lang.Thread.run(Thread.java:595)
解决办法:
在数据库中执行sp_procxmode sfa_ams_handle_can, 'anymode'即可。sfa_ams_handle_can是存储过程名。
分享到:
相关推荐
在IT领域,特别是数据库管理与开发中,Sybase作为一个历史悠久且功能强大的数据库系统,其存储过程(Stored Procedure)的编写技巧与方法对于提高数据库性能、确保数据安全性以及简化复杂操作流程具有重要意义。...
在SQL Server中,事务是确保数据一致性的重要机制,特别是在存储过程中。存储过程是一组预编译的SQL语句,可以在数据库中被多次调用,提高了效率并降低了网络流量。本篇将详细介绍如何在SQL Server存储过程中使用...
在Oracle数据库环境中,事务管理与存储过程的结合是实现数据一致性、事务回滚以及错误处理的关键技术之一。本文将深入探讨“Oracle事务回滚存储过程”这一主题,旨在理解其核心概念、工作原理以及实际应用。 ### ...
本篇文章详细讲解了创建 Sybase 12.5 数据库的步骤,以及如何导入数据库的过程,为读者提供了一个详细的指南,帮助读者更好地理解 Sybase 数据库的创建和导入过程。 知识点: 1. Sybase 12.5 数据库的创建过程 2. ...
在数据库管理中,存储过程(Stored Procedure)是一种预编译的SQL代码集合,可以在数据库服务器上执行,以完成特定的任务,比如数据的增删改查。在本例中,我们关注的是如何在C#中调用一个存储过程来实现图书的删除...
在数据库管理中,存储过程是一种预编译的SQL语句集合,它封装了特定的数据库操作,便于重复使用和提高性能。在这个场景中,我们关注的是一个名为"银行转账存储过程"的特定应用,它是针对银行转账业务逻辑的实现。这...
例如,调用存储过程时,可以将相关操作包裹在Transaction中,以便在出现错误时能够回滚事务。 总之,通过Hibernate的Query接口,我们可以方便地调用Oracle的存储过程和函数,实现复杂的业务逻辑。结合源码和数据库...
9. **异常处理**:使用`TRY-CATCH`结构可以捕获和处理存储过程中的错误,提供更健壮的代码。 10. **优化**:通过合理设计存储过程,比如使用索引、避免全表扫描、减少数据类型转换等,可以进一步提升执行效率。 11...
在编写存储过程时,我们常常需要处理可能出现的各种错误和异常,以确保程序的健壮性和可靠性。本篇文章将详细探讨如何在MySQL的存储过程中使用`DECLARE EXIT HANDLER FOR SQLEXCEPTION`来实现错误异常处理。 首先,...
在存储过程中可以使用`BEGIN TRANSACTION`, `COMMIT TRANSACTION`和`ROLLBACK TRANSACTION`进行事务控制,确保数据一致性。 十、动态SQL 存储过程内部可以使用`EXEC sp_executesql`执行动态构建的SQL语句,增加灵活...
SQL存储过程是数据库管理系统中一组为了完成特定功能的SQL语句集合,它们被编译并存储在数据库中,可以被多次调用,提高了代码的复用性和执行效率。本资源提供了一个SQL存储过程模板,旨在帮助开发者更方便、高效地...
Sybase T-SQL是一种专为Sybase数据库设计的SQL语言变体,用于管理和操作存储在Sybase数据库中的数据。该文档提供了关于如何使用Sybase T-SQL进行数据库编程的全面指南。 #### 二、Sybase T-SQL基础 - **基本语法**:...
这是通过在存储过程中合理使用事务相关的SQL语句,如BEGIN TRANSACTION、COMMIT和ROLLBACK来实现的。 在实际应用中,开发人员需要根据需求来设计和实现存储过程,包括确定参数、编写逻辑、处理异常以及优化性能。...
在数据库管理领域,存储过程(Stored Procedure)是预编译的SQL语句集合,它可以包含一系列的数据库操作,如查询、插入、更新和删除数据,甚至包括事务处理和错误处理等复杂逻辑。学习并精通存储过程是提升数据库...
6. **错误处理**:使用TRY...CATCH结构捕获和处理存储过程执行过程中可能出现的错误。 7. **返回值和输出参数**:通过RETURN语句设置返回值,通过OUTPUT关键字定义和使用输出参数,以传递过程执行结果。 8. **嵌套...
Sybase 提供了一系列错误处理机制,例如当系统遇到错误时会返回错误号。为了更好地处理这些错误,Sybase 提供了不同的错误处理指令。例如,在遇到系统故障时,可以使用 `DUMP LOAD` 命令来恢复数据。 #### 6. ...
5. **事务管理**:在存储过程中,可以使用BEGIN TRANSACTION、COMMIT TRANSACTION和ROLLBACK TRANSACTION来控制事务,确保数据的一致性和完整性。 6. **视图与存储过程结合**:视图可以引用存储过程,使得视图的...
3. **异常处理**:利用`WHENEVER SQLERROR DO`语句,可以处理存储过程中可能出现的错误情况,确保程序的健壮性。 4. **游标操作**:存储过程中可以定义和使用游标,用于逐行处理查询结果,这在需要对查询结果进行...
如果在事务执行过程中发生错误,可以使用`ROLLBACK TRANSACTION`撤销所有更改,保持数据的原子性和一致性。 #### 条件判断 存储过程中可以通过`IF...ELSE`语句进行条件判断,根据不同的条件执行不同的代码块。例如...
### SQL存储过程根据年份和月份返回全月所有日期及星期 #### 存储过程概述 本篇将详细介绍一个SQL存储过程,该过程能够根据指定的年份和月份,返回该月的所有日期及其对应的星期。这在处理日期相关的数据时非常...