`
JAVA天地
  • 浏览: 673713 次
  • 性别: Icon_minigender_1
  • 来自: 太原
文章分类
社区版块
存档分类
最新评论

JAVA调用SYBASE过程报过程模式不对的处理

阅读更多

通过JAVA、JDBC驱动为JTDS1.2调用SYBASE12.5存储过程的时候,老是报该过程只允许在"Unchained"模式下运,通过命令sp_procxmode查看的时候,该过程也是"Unchained"模式,Hibernate报运行命令"setchainedoff"即可将当前库的存储过程运行模式改为"Unchianed",但执行后也不行;后面在一个国外的网站查到,将其运行模式改为"anymode"即可,采用命令:sp_procxmode过程名'anymode',但要修改所有与该过程相关的,被该过程调用的模式都为"anymode"才行,据说只有Sybase有这个毛病,其它的数据库都没有这个问题。

注:chained和Unchained的分别简单的说,就是chained会自动起事务;Unchained不会自动启事务,需要用户显性的用begintran..commit/rollback去定义。下面是英文说明:

AdaptiveServerprovidesSQLstandard-compliant“chained”transactionbehaviorasanoption.Inchainedmode,alldataretrievalandmodificationcommands(delete,insert,open,fetch,select,andupdate)implicitlybeginatransaction.SincesuchbehaviorisincompatiblewithmanyTransact-SQLapplications,Transact-SQLstyle(or“unchained”)transactionsremainthedefault.

举个例子
Inchainedtransactionmode,AdaptiveServerimplicitlyexecutesabegintransactionstatementjustbeforethefollowingdataretrievalormodificationstatements:delete,insert,open,fetch,select,andupdate.Forexample,thefollowinggroupofstatementsproducedifferentresults,dependingonwhichmodeyouuse:insertintopublishersvalues("9906",null,null,null)begintransactiondeletefrompublisherswherepub_id="9906"rollbacktransactionInunchainedtransactionmode,therollbackaffectsonlythedeletestatement,sopublishersstillcontainstheinsertedrow.Inchainedmode,theinsertstatementimplicitlybeginsatransaction,andtherollbackaffectsallstatementsuptothebeginningofthattransaction,includingtheinsert.

<!--EndFragment-->
分享到:
评论

相关推荐

    java jdbc 连接数据库驱动程序包(oracle mysql sybase)

    3. **Sybase JDBC驱动程序**:对于Sybase数据库,Java应用程序通常使用jTDS或jConnect驱动程序进行连接。jTDS是一个开源的JDBC驱动,支持Sybase ASE(Adaptive Server Enterprise)和Microsoft SQL Server,而...

    sybase 15.7 64位驱动,sybase数据源设置,sqlserver链接sybase设置

    Sybase驱动程序是连接到Sybase数据库服务器的关键组件,它允许应用程序通过ODBC(Open Database Connectivity)或JDBC(Java Database Connectivity)接口与数据库进行交互。在64位操作系统中,驱动程序必须与系统...

    powerbuilder_call_java

    10. **设计模式**:使用适当的设计模式可以帮助更好地组织代码,例如工厂模式用于创建Java对象,代理模式用于控制对Java代码的访问。 通过理解和掌握上述知识点,开发者可以有效地将PowerBuilder和Java结合,创建出...

    Sybase编程指南,涵盖全面

    接着,书中涉及JAVA编程与Sybase的结合,这部分可能涵盖JDBC(Java Database Connectivity)接口的使用。JDBC是Java平台的标准API,用于连接和操作数据库。通过JDBC,Java开发者可以编写与数据库交互的代码,执行SQL...

    sybase 驱动包

    Sybase JDBC驱动让Java应用程序能够与Sybase数据库进行交互,支持多种连接模式,包括标准TCP/IP、 Named Pipe和Shared Memory。 3. **ADO.NET驱动**:对于.NET框架的应用程序,Sybase提供了ActiveX Data Objects ...

    MySQL向Sybase ASE迁移指南

    Sybase ASE提供了不同的存储管理模式,例如基于文件的存储和基于设备的存储。此外,在创建数据库时,需要指定数据文件和日志文件的位置。 ##### 4.2 数据库事务日志 Sybase ASE的日志管理与MySQL有所不同,支持...

    Sybase语法大全.pdf

    - **与开发工具的集成**:支持.NET、Java等多种编程语言,便于开发人员使用。 - **与BI工具的集成**:支持与Tableau、Power BI等商业智能工具的集成,以便于数据分析和报表展示。 通过以上知识点的介绍,可以看出...

    使用proxool连接sybase时处理事务的问题

    本文将深入探讨在使用`Proxool`连接Sybase数据库时处理事务的一些常见问题及解决方案。 首先,`Proxool`是一个轻量级的数据库连接池实现,它提供了灵活的配置选项和监控功能,以适应各种项目需求。当遇到“使用...

    CodeSmith Sybase SchemaProvider

    这个扩展使得CodeSmith能够连接到Sybase数据库,并获取数据库的模式信息,比如表、视图、存储过程等,然后根据这些信息自动生成对应的代码。 在描述中提到的"CodeSmith链接sybase驱动",意味着你需要安装适用于...

    centos6.2下安装sybase--详细操作步骤.doc

    在CentOS 6.2操作系统环境下安装Sybase是一项重要的任务,尤其对于那些依赖于Sybase数据库系统的用户。本文将详细阐述在CentOS 6.2上安装Sybase的步骤,确保您能够顺利进行。 首先,我们需要创建一个专门用于运行...

    快速解决Sybase JDBC DRIVER出现的问题

    本篇文章将深入探讨在使用Sybase JDBC DRIVER时可能会遇到的问题以及相应的解决策略。 问题描述: 在某些情况下,当开发者尝试通过JDBC连接(例如`connection conn`)多次设置自动提交模式(`conn.setAutoCommit(b)...

    SYBASE SQL ANYWHERE 12 CLIENT

    **SYBASE SQL ANYWHERE 12 CLIENT** SYBASE SQL Anywhere 12 客户端是Sybase公司推出的一款强大的数据库管理系统(DBMS)的客户端工具,专为移动和远程环境设计,支持在各种操作系统上运行,包括Windows、Linux、...

    java 各种数据库连接字符串

    在Java编程中,数据库连接是通过Java Database Connectivity (JDBC) API来实现的,它提供了一套标准接口,允许开发者使用Java语言与各种不同的数据库系统进行交互。连接字符串是JDBC中一个关键的概念,用于指定...

    reemaker+sybase资料

    7. **错误处理**:在开发过程中,应确保处理好FreeMarker和Sybase的异常,提供友好的错误提示,同时记录详细的日志以便排查问题。 综上所述,FreeMarker和Sybase的结合在构建高效、灵活的Web应用时发挥着关键作用,...

    java连接数据库代码

    总结,Java连接数据库涉及JDBC API的使用,包括加载驱动、创建连接、执行SQL以及处理结果等步骤。不同的数据库系统需要使用对应的JDBC驱动,连接字符串格式也会有所不同。在实际操作中,还需要注意事务管理、性能...

    java工具类:java连接各个数据库方法.java

    本文将详细介绍如何通过Java工具类实现与多种数据库的连接,包括Oracle、DB2、SQL Server、Sybase、Informix、MySQL、PostgreSQL以及Access等。 #### 1. Oracle 8/8i/9i 数据库 (thin 模式) 对于Oracle 8/8i/9i...

    java与模式chp18[归类].pdf

    《Java与模式》第18章探讨了在Java开发中如何处理序列键生成以及应用单例和多例模式。在数据库驱动的信息系统中,主键是表数据的关键元素,通常由系统自动生成序列号。本章以一个全球金融网站项目为背景,分析了在...

    Java项目快递单打印单系统java源码

    可能使用了JDBC(Java Database Connectivity)技术,而"类库列表.txt"文件可能列出了所有依赖的外部库,包括JTDS,这是一个开源的JDBC驱动,专用于连接SQL Server和Sybase数据库,确保了程序能够高效、稳定地处理...

    JAVA语言程序设计课程设计报告模板及范文.pdf

    - Java事件处理模型是基于观察者模式,允许组件在发生特定事件时触发相应的动作。 - 事件监听器接口如ActionListener、MouseListener等用于处理用户的动作,例如点击、拖拽等。 7. **Java中的类和对象**: - ...

Global site tag (gtag.js) - Google Analytics