-
jdbc控制sql server 2000事务的问题3
最近在看jdbc方面基础的东西,发现在sql server 2000中。将默认的事务提交通过setAutoCommit(false)方法修改后,然后在第二次调研
connection.prepareStatement(sql)时总提示:[Microsoft][SQLServer 2000 Driver for JDBC]Can't start a cloned connection while in manual transaction mode.
代码如下:public int Query(String ht, String xm) { Connection conn = null; PreparedStatement pst = null; ResultSet rs = null; String htbh = ht; String xmbh = xm; float dj = 0.0f; float bcdj = 0.0f; float bghdj = 0.0f; boolean boo = false; int i = 0; try { conn = SinglJdbcUtil.getIntance().getConnection(); conn.setAutoCommit(false); boo = conn.getAutoCommit(); System.out.println("2: " + boo); String sql = "SELECT htbh, gclx, pzwh, gq, xmbh, xmmc, dj, bcdj, bghdj, pfsl" + " FROM mp_Htjsb WHERE htbh = ? AND xmbh = ? AND GCLX = '单价变更'"; pst = conn.prepareStatement(sql); pst.setString(1, htbh); pst.setString(2, xmbh); rs = pst.executeQuery(); if (rs.next()) { dj = rs.getFloat("dj"); bcdj = rs.getFloat("bcdj"); bghdj = rs.getFloat("bghdj"); } if (dj != bghdj || bghdj != 0) { bcdj = Math.abs(dj - bghdj); sql = "UPDATE mp_Htjsb SET pfje = pfsl * bghdj + 0.15, bcdj = ? " + " WHERE htbh = ? AND xmbh = ? AND GCLX = '单价变更'"; } pst = conn.prepareStatement(sql);//执行到此处发生异常 pst.setFloat(1, bcdj); pst.setString(2, htbh); pst.setString(3, xmbh); i = pst.executeUpdate(); conn.commit(); } catch (SQLException ex) { ex.printStackTrace(); try { conn.rollback(); } catch (SQLException e) { e.printStackTrace(); } return i; } finally { SinglJdbcUtil.getIntance().free(rs, pst, conn); } return i; } 请问达人们怎么解决或是我的思路问题出在哪里了 怎么没人理我啊
2010年11月15日 15:43
目前还没有答案
相关推荐
sqlserver各版本驱动 DriverManager:负责加载各种不同驱动程序(Driver),并根据不同的请求,向调用者返回相应的数据库连接(Connection)。Driver:驱动程序,会将自身加载到DriverManager中去,并处理相应的请求...
Microsoft JDBC Driver for SQL Server 是与 Java 数据库连接 (JDBC) 4.0 兼容的驱动程序,可提供对 Microsoft SQL Server 数据库的可靠数据访问。JDBC 驱动程序可访问 SQL Server 2005 中引入的许多功能,包括...
在SQL_SERVER中使用分布式事务全攻略(图解)
(4)理解JDBC中实现事务处理的基本方法; (5)理解数据库连接池的基本原理和思想,学会在tomcat服务器中配置数据库连接池,并掌握从连接池中获取连接的基本方法。 (6)初步理解数据访问层的基本设计方法,理解web...
2.1.2 Microsoft SQL Server数据库设计及ODBC配置 2.1.3 Oracle 数据库的基本说明及其使用简介 2.1.4 MySQL的安装及使用简介 2.2 使用JDBC连接数据库 2.2.1 SQLJ基本知识 2.2.2 用PL/SQL和Java建立应用程序的...
使用Sharding-JDBC进行分库分表,请阅读如何分库分表章节。 分库分表后,要进一步提高性能,可以使用读写分离功能。...Oracle和SQLServer的分页涉及到子查询又该如何处理?请阅读分页及子查询。 Sharding
Connection:数据库连接,负责与进行数据库间通讯,SQL执行以及事务处理都是在某个特定Connection环境中进行的。可以产生用以执行SQL的Statement。Statement:用以执行SQL查询和更新(针对静态SQL语句和单次执行)。...
一个Java应用系统,如果要操作数据库,则通过JDBC来实现的。增加、修改、删除都是通过相应方法间接来实现的,事务的控制也相应转移到Java程序代码中。因此,数据库操作的事务习惯上就称为Java事务.
一般而言,有以下两种连接 SQL Server 的方式,一是利用 SQL Server 自带的客户端工具,如企业管理器、查询分析器、事务探查器等;二是利用用户自己开发的客户端程序,如ASP 脚本、VB程序等,客户端程序中又是利用 ...
支持前端作为MySQL通用代理,后端JDBC方式支持Oracle、DB2、SQL Server 、 mongodb 、巨杉。 支持密码加密 支持服务降级 支持IP白名单 支持SQL黑名单、sql注入攻击拦截 支持prepare预编译指令(1.6) 支持非堆内存...
分片JDBC-分片数据库和表的JDBC驱动程序 概述 分片JDBC是JDBC的扩展,提供了诸如分片,读/写拆分和BASE事务之类的分布式功能。... 支持MySQL,Oracle,SQLServer和PostgreSQL。 5.配置 Java配置 Spring命名空间 Y
D:\oraclexe\app\oracle\product\10.2.0\server\jdbc\lib\ojdbc14.jar linux下启动数据库监听的命令: lsnrctl start; "select id from s_emp where name = '"+name+"'"; table s_user( id , name, age) class ...
那么应该是数据库在执行 数据操作失败 or 事务未提交 之后 将需要执行的sql语句锁死了 Oracle的操作方式: 先查询锁定记录 : SELECT s.sid, s.serial# FROM v$locked_object lo, dba_objects ao, v$s
事务补偿是指在执行某个业务方法时,本应该执行成功的操作却因为服务器挂机或者网络抖动等问题导致事务没有正常提交,此种场景就需要通过补偿来完成事务,从而达到事务的一致性。 补偿机制的触发条件? 当执行关闭...
还有就是一开始没安装微软JDBC for SQL Server2000的驱动程序,导致无法加载驱动类库。几天的工夫总归没白费! 今天装了MySQL数据库,想给网站换个数据库管理系统。说实话,用惯了SQL Server2000感觉没什么意思了,就...
H2,Mysql,SqlServer,PostgreSQL 响应式r2dbc事务控制 响应式权限控制,以及权限信息获取 RBAC权限控制 数据权限控制 双因子验证 多维度权限管理功能 响应式缓存 非响应式支持(mvc,jdbc) 内置业务功能 权限...
- 创建 undo_log 表: `./docker/seata-server/conf/seata.sql` - 创建 demo 表: `./docs/db` 2. 配置 host - mysql.localhost - localhost - nacos.localhost 3. 启动项目 - project-services
系统采用三层结构,在客户端用户通过浏览器完成数据下载与模拟操作,浏览器端的表现逻辑通过JSP网页完成。...由于系统测试需要成熟的数据库支持,因此系统采用SQL Server 2000数据库作为数据库服务器。
图书管理系统是学校管理机制中的重要组成部分,通过对图书管理系统的运行...本系统中通过jdbc驱动和数据库进行无缝连接,后端的数据库是sqlserver2005,是微软的数据库,该数据库具有较高的完整性,一致性和安全性。
适用于项目搭建,毕设,课设等...本系统中通过jdbc驱动和数据库进行无缝连接,后端的数据库是sqlserver2005,是微软的数据库,该数据库具有较高的完整性,一致性和安全性。 关键词:图书管理,信息管理,jsp,ssh技术。