sqlserver 2000 如何查询未提交的事务

山城忙碌人 2011-05-05 05:00:54
如题:
环境:java+sqlserver2000
问题描述:tomcat启动后,程序运行过程中出现事务提交不了(注:功能比较少,不是一用某个功能就出现事务提交不了),要过很久有时才能正常,有时必须重启动服务器程序。
提问:sqlserver 2000 如何查询未提交的事务,通过企业管理器可以查询吗。如果不能的话,我怎么找到是哪个进程ID(通过企业管理器看阻塞ID)造成了事务未提交,我能不能结束该进程ID,让该进程ID的事务回滚,如何在不重启动tomcat的情况下,结束事务,可以让未结束的事务回滚。
...全文
239 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
山城忙碌人 2011-05-05
  • 打赏
  • 举报
回复
kingtiy
你的解决办法让我在2005上试通了。在此特地感谢你。
决定把分给你了。愿上天保佑你。
山城忙碌人 2011-05-05
  • 打赏
  • 举报
回复
dbcc opentran('数据库名字')
没有活动的处于打开状态的事务。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

这是什么意思呢?
代表没有事务未提交,是这个意思吗?
山城忙碌人 2011-05-05
  • 打赏
  • 举报
回复
exec sp_lock
运行后 出现:
spid ~ dbid ~ objid ~ indid ~ type ~ Resource ~ mode ~ status
51(然后自增) 10 0 0 db s grant

大部分都象上面哪样
请问这是什么意思?

kingtiy 2011-05-05
  • 打赏
  • 举报
回复
dbcc opentran('DB_NAME')
这个可以找出最早未提交的事务的进程ID
Kill 99 --SPID
bill024 2011-05-05
  • 打赏
  • 举报
回复
exec sp_lock

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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