主题:  把数据库联接写在Global.asa里效率是高还是低?

悲伤的设计

职务:普通成员
等级:1
金币:1.0
发贴:158
#12004/4/2 17:42:55
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Application_OnStart
	Set Application("Conn") = Server.CreateObject("ADODB.Connection")
	Application("sqll") = "DRIVER={SQL Server};SERVER=qqw;UID=sa;PWD=3348;DATABASE=dsaw;"
	Application("Conn").open Application("sqll")
End Sub
</SCRIPT>
请教大家?Global.asa文件里,我把数据库联接写在这里,效率是高还是低?



悲伤的设计

职务:普通成员
等级:1
金币:1.0
发贴:158
#22004/4/4 22:00:29
请教大家



janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#32004/4/4 22:32:08
当然不高,Application("Conn") 这个对象变量会在整个应用程序生命周期内持续占据连接资源。

对于 ADODB.Connection 对象,原则上应该在需要才使打开,不用时立即关闭。

Microsoft 新的 ADO 提供程序使用了连接池技术,可以在某些情况下将断开的连接放入连接池中以供后面的程序调用,性能上有所提高。