首先,我明白为什么尽快关闭服务器数据库连接是一种好习惯。
我正在开发一个包含本地数据库的程序(5 个表 ~ 200 列),它可能会增长到几千行(所以怀疑它的开销太大了)。我的第一个想法是保持本地数据库连接,直到程序关闭。
您能否确认这是否可以或强调我不想这样做的原因?
首先,我明白为什么尽快关闭服务器数据库连接是一种好习惯。
我正在开发一个包含本地数据库的程序(5 个表 ~ 200 列),它可能会增长到几千行(所以怀疑它的开销太大了)。我的第一个想法是保持本地数据库连接,直到程序关闭。
您能否确认这是否可以或强调我不想这样做的原因?
默认情况下,ADO.NET 与大多数数据库引擎一起在后台提供自动连接池。绝对没有必要保持连接打开,因为 ADO.NET 无论如何都会为您执行此操作,并在您重新打开连接时将其返回。只需关闭它,就少了一件需要担心的事情。
@Fredrik 是的,这将是他们用户配置文件上到 localDB 的单个用户连接。我想保持它打开的唯一原因是避免重新连接时可能出现的异常,但我认为连接池响应总结了它,所以我很高兴在完成后继续关闭。
@DrJokepu 干杯
您是否有任何特殊原因要保持连接打开?你想通过这样做来达到什么目的?
如果它是一个单用户应用程序,其中数据库将为程序的单个实例提供服务,理论上我猜它不会受到伤害。但是,如果您的应用程序应该变成一个由多个人针对同一个数据库运行的应用程序,这可能会成为一个问题。
我会说; 坚持推荐的做法,除非你有很好的理由不这样做。