多线程调用存储过程问题

starsong 2009-10-27 02:13:43
我的一个系统前台是多线程处理业务,每个线程都会去调用我的一个存储过程,当只有一个线程处理业务的时候一切正常,但当有两个线程处理业务的时候就会出现有一个业务处理正常,而另外的线程处理存储过程的时候报错,具体错误如下:com.ibm.db2.jcc.c.SqlException: DB2 SQL error: SQLCODE: -882, SQLSTATE: 3B502, SQLERRMC: null,经过查询发现SQLSTATE: 3B502的意思是:指定了 RELEASE 或 ROLLBACK TO SAVEPOINT,但是保存点不存在.但我在存储过程中没有savepoint,请教各位帮忙看看这个是什么原因造成的,应该怎么解决,谢谢。
...全文
375 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jzSG1 2010-02-18
  • 打赏
  • 举报
回复
是啊!等待牛人解答~~~~~~~~~~~数据库操作的多线程不知如何操作
秀HAPPY 2010-02-10
  • 打赏
  • 举报
回复
引用 2 楼 mr_bean 的回复:
有可能多个线程并发是针对同一个数据集进行操作


如果一个读的线程和一个写的线程同时针对一个数据库操作会怎么样呀!
starsong 2009-10-27
  • 打赏
  • 举报
回复
牛人些帮帮忙啊,这个问题好多天都没有解决到。
starsong 2009-10-27
  • 打赏
  • 举报
回复
另外,我这边都是把需要的数据取到临时表中处理的
starsong 2009-10-27
  • 打赏
  • 举报
回复
我现在设置的是commit=auto,应该是update,insert后马上就commit的了吧
Mr_Bean 2009-10-27
  • 打赏
  • 举报
回复
那么前一sp没有commit之前 后一sp有可能等待或者出错
Mr_Bean 2009-10-27
  • 打赏
  • 举报
回复
有可能多个线程并发是针对同一个数据集进行操作
starsong 2009-10-27
  • 打赏
  • 举报
回复
自己up

5,891

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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