打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
引起超时的原因及表解锁的方法
[Sql Server]超时时间已到。在操作完成之前超时时间已过或服务器未响应。
原因分析:
1.如果用到了事务处理
   在事务开始BeginTransaction()与事务结束transaction.Commit()中间用到了没有启动事务的过程,如其他查询等,会提示此错误。另外一种情况就是没有正确的使用事务导致表被锁定,也会引起超时。
2.ADO.NET的使用引发的问题
   connection未及时关闭也会引发超时的问题。另外就是Command命令执行超时,此时根据需要可以修改command.CommandTimeout的时间,默认时间为30秒。
3.Web页面执行超时,如上传大批量的文件
   需要修改配置文件:
<system.web> 
<httpRuntime maxRequestLength="102400" executionTimeout="720" />
</system.web>
表解锁的方法:
select id from sysobjects where  name='TableName' --查询表名为TableName的表的id
exec  sp_lock --执行该存储过程得到所有锁定的表的信息,根据前一步中查到的id可找到spid信息即进程ID
kill spid --解锁,例如kill 70 就是关闭进程id为70的锁定表的进程
以上是表解锁的方法,根本的解决方法还是得找出引起表被锁定的原因。我遇到的情况是未正确使用事务引起的。
另外,在未解锁的情况下可以使with (nolock)来执行SQL,例如select username from User with (nolock) where userid=101 。
 
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/N_IThero/archive/2010/05/21/5614669.aspx
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
MySQL学习笔记十二:锁表解锁与加行锁
事务(进程ID61)与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品。请重新运行该事务。...
银行核心系统之分表分区和批处理性能优化
Excel表中批量合并单元格且保留每行数据的新方法 透视表解法
通过SQL Server Profiler来监视分析死锁
Spring Web Flow 2 中流管理的持久化
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服