主题:ado.net连接关闭后发现连接仍存在
			 shigx
				 [专家分:1790]  发布于 2006-06-14 08:12:00
 shigx
				 [专家分:1790]  发布于 2006-06-14 08:12:00							
			在vb.net中,用ado.net打开sql数据库连接,进行相关处理后,用myConn.close关闭该连接。
可是在第三方监控软件中,发现该连接仍然存在!
用vb6做相同操作后,一旦连接关闭,在第三方监控软件中就发现连接真正中断,这正常吗?求大家帮助!谢谢!
						
					 
		
			
回复列表 (共5个回复)
		
								
				沙发
				
					 yangsheep [专家分:770]  发布于 2006-06-14 09:15:00
yangsheep [专家分:770]  发布于 2006-06-14 09:15:00				
				你看看是不是又有别的连接在上面?可能是不经意时打开的连接,好好检查一下
							 
						
				板凳
				
					 shigx [专家分:1790]  发布于 2006-06-14 10:23:00
shigx [专家分:1790]  发布于 2006-06-14 10:23:00				
				绝对不是不经意间打开的连接。
其实,我的应用软件很简单,不是一个系统,而只是一个窗体加一个按钮和一个text框,是一个例程而已。
也就是点一下按钮以后,执行如下代码:
        Dim SqlConn As SqlConnection
        Dim mySqlCommand As SqlCommand
        Dim myRead As SqlDataReader
        Dim SqlQueryString As String
        SqlConn = New SqlConnection(sConnString_remote)
        SqlConn.Open()
        SqlQueryString = "select * from t_list"
        mySqlCommand = New SqlCommand(SqlQueryString, SqlConn)
        myRead = mySqlCommand.ExecuteReader()
        If myRead.HasRows Then
            myRead.Read()
            textbox1.Text = myRead.Item("f_abc")
        Else
            textbox1.Text = ""
        End If
        myRead.Close()
        SqlConn.Close()
表中只有一条记录,提取出来后显示在text框中,然后关闭连接。但是,执行后,用第三方监控软件发现连接仍然维持着,用VB6做相同的事情,却不是这样。
我们也做了测试,如果在sqlconn.close()后面在不重新打开连接的情况下再去操作,数据库,显示出错信息。
							 
						
				3 楼
				
					 dengxi [专家分:310]  发布于 2006-07-16 15:07:00
dengxi [专家分:310]  发布于 2006-07-16 15:07:00				
				你把数据适配器给清空试试呢。
							 
						
				4 楼
				
					 make3782 [专家分:220]  发布于 2006-10-16 01:13:00
make3782 [专家分:220]  发布于 2006-10-16 01:13:00				
				Try
    myconnect.Open()
    ......
    ......
 Catch ex As Exception
        Finally
            myconnect.Close()
        End Try
试下
							 
						
									
			
我来回复