8
|
Paul Hollingsworth · 技术社区 · 16 年前 |
![]() |
1
20
不,创造大量的
如果您尝试自己缓存连接,有很多事情可能会出错。只说不: |
![]() |
2
2
您应该启用 connection pooling 在连接字符串上。在这种情况下,运行时会在关闭“池”时将连接添加回“池”,而不是真正断开连接。当从池中取出一个“新”连接时,它将被重置(即调用sp_reset_connection),然后作为一个全新的新连接呈现给您的应用程序。池可以透明地处理这些情况,就像在池中空闲时连接被关闭一样。 “从头开始”创建新连接的成本很高,因为身份验证需要在客户端和服务器之间进行多次往返(取决于身份验证方法和SSL设置,在最佳情况下可以是1次往返,而在较差情况下可以是10次往返)。 为了回答你的问题,联系提出 OnStateChange 当它们的状态发生变化时发生事件,但如果使用池,则不应该关心这一点。 |
![]() |
3
1
根据我最近的经验,如果您使用此代码:
出现错误,并且不显式关闭连接,它将不会关闭或签回池中。所以使用catch或finally块关闭连接 |
![]() |
John D · 需要为NULL或NOT NULL的WHERE子句 5 月前 |
![]() |
Marc Guillot · 记录值时忽略冲突 5 月前 |
![]() |
Fachry Dzaky · 正确使用ROW_NUMBER 5 月前 |
![]() |
TriumphTruth · 从满足特定条件的数据集中选择1行 6 月前 |