什么是sql服务器中的会话。我试图使用sp_getapplock和文档声明:
放置在资源上的锁与当前事务或当前会话相关联。当事务提交或回滚时,将释放与当前事务关联的锁。与会话关联的锁将在会话注销时释放。当服务器因任何原因关闭时,所有锁都会被释放。
“会话注销时释放与会话关联的锁”。
我想知道什么是会议。使用management连接是到数据库的会话;使用asp.net连接到sql server也会创建会话。
如果我使用ADO .net和连接池,连接池中的每个连接是否都被视为不同的会话?
发布于 2011-09-22 13:50:12
如果我使用ADO .net和连接池,是否连接池中的每个连接都被认为是不同的会话?
说大也大吧。每次打开/关闭一个新连接时,都是一个会话。但是,连接池的“特性”之一是,它并不总是在命令时打开/关闭,当它看到您多次打开和关闭一组连接时,它将在幕后使用单个连接,我相信这将导致在sql server上进行一个单独的会话。
发布于 2011-09-22 13:52:17
使用连接池时,注意在重用连接的每次重新分配之间调用sp_reset_connection。This SO Post详细介绍了sp_reset_connection所做的清理工作。
编辑在你的问题,sp_reset_connection“自由获得锁”。
发布于 2011-09-22 13:56:03
sp_getapplock的@LockOwner是指发布时:
基本上,sys.sysprocesses中的SPID是一个“会话”。
https://stackoverflow.com/questions/7515797
复制相似问题