【问题标题】:Closing a connection in stored procedure在存储过程中关闭连接
【发布时间】:2015-12-21 17:44:37
【问题描述】:

不幸的是,在使用 .Net 表单时,我打开了一个数据库连接,在执行查询后,我忘记了关闭连接。现在我的例程一次又一次地调用该查询,结果连接池很快就被填满了。

是否有任何选项可以通过存储过程手动关闭连接池?

【问题讨论】:

  • 使用 Using 块,它会自动关闭并处理您的连接。不要尝试从服务器端关闭连接。
  • 或者,如果它是一次性修复,运行 sp_who2 并查找由于您的进程而打开的所有进程并使用 KILL 关键字关闭。警告。谨慎使用,并作为最后的手段。
  • @jeremy 是正确的。您还应该能够查看最后从线程执行的特定查询,以及它空闲了多长时间,以确保它是您打算杀死的查询。
  • 我无法在可执行文件中设置热修复。唯一的选择是任何可能的存储过程修复。
  • 很遗憾没有什么好办法。要么修复exe中的问题并重新部署,要么建议你的客户端每天重启sql server,直到你修复它。

标签: .net sql-server connection-pooling sqlconnection


【解决方案1】:

失去对连接的引用后无法关闭连接,但可以在sql server上@​​987654321@,导致所有事务回滚,程序停止运行

【讨论】:

    猜你喜欢
    • 2019-12-08
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多