struts+tomcat4.1+sqlserver2000 提交事务处理的时候出现链接clone ,不能执行事务

tomwin 2004-08-04 03:08:23
我在做一个小工程的时候用sqlserver2000来做数据库,struts架构来解决bs架构.
在做事务的时候
Connection conn = null;
Statement stmt = null;
String[] functionSigns = null;

functionSigns = sepersteStrings(functions, ",");
try
{
conn = ConnManager.getConnection();
conn.setAutoCommit(false);
stmt = conn.createStatement();
String delUserFuncsSql = "delete from table_user where USERS_ID=" +
userID;
stmt.addBatch(delUserFuncsSql);
if (null != functions && functions.length() > 0)
{
for (int i = 0; i < functionSigns.length; i++)
{
String insertSql = "insert into OMS_T_USER_FUNCTION values( '" +
userID +
"', '" + functionSigns[i] +
"', '" + "1" +
"', '" + (new Date(System.currentTimeMillis())).toString() + "')";
stmt.addBatch(insertSql);
}
}
stmt.excuteBatch();
conn.commit();
conn.setAutoCommit(true);
stmt.close();

出现链接是克隆的,sqlserver2000不允许执行事务,开始是怀疑自己写的链接池不允许用事务,后来用程序来链接数据库(不在tomcat环境下)进行事务操作,是可以执行事务操作的,请问是怎么回事呢? 是sqlserver2000的问题,还是struts的问题呢?请大侠赐教
...全文
94 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
weijian 2004-08-12
  • 打赏
  • 举报
回复
怎么释放干净啊?
damaha999 2004-08-04
  • 打赏
  • 举报
回复
关注
fanciex 2004-08-04
  • 打赏
  • 举报
回复
改用连接池好了
tomwin 2004-08-04
  • 打赏
  • 举报
回复
显示的错误是conn 是clonle的.我看看以前的操作是不是没有释放干净.
tomwin 2004-08-04
  • 打赏
  • 举报
回复
我在做事务之前Connection conn = null;
了啊.
TinyJimmy 2004-08-04
  • 打赏
  • 举报
回复
sqlserver jdbc不运行一个连接做两件事情, 你的conn在操作前在干另一件事, 而且释放得不干净

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧