正确关闭数据库连接 - VBScript + MS SQL

时间:2012-09-21 18:45:42

标签: sql-server asp-classic vbscript

我有一个连接到SQL服务器的经典ASP(vbscript)Web应用程序。在某些页面上,我打开多个数据库连接来提取数据。

我的问题是:

最好在每个页面的底部添加一个关闭连接功能,还是在使用后立即明确关闭连接?请记住,在这些特定页面上,每次获取数据时我都会重新打开数据库连接;我没有重用连接。 IE:

Set DBread = Server.CreateObject("ADODB.Connection")
DBread.Mode = adModeRead
DBread.Open (SQL_DB_CONN)

当我关闭连接时,我使用:

DBread.Close
Set DBread = Nothing

那么,我应该经常打开然后关闭连接还是不断打开连接,然后在页面末尾关闭它们一次?

2 个答案:

答案 0 :(得分:2)

您应该打开一个连接并在页面顶部进行所有查询,然后在上次查询执行后立即关闭连接

示例:

Set DBread = Server.CreateObject("ADODB.Connection")
DBread.Mode = adModeRead
DBread.Open (SQL_DB_CONN)

'Make SQL Calls Here and Save rows of data by using the getrows function

DBread.Close
Set DBread = Nothing

'Process rows of data here

答案 1 :(得分:2)

尽可能短的时间保持您的连接畅通无阻。 Connection pooling会担心你的效率。

但是,如果您有顺序数据库操作,他们可以共享相同的连接。这也允许您使用交易。