try

   MyConn.Open();
   …………

catch()


finally

   MyConn.Close();

这是唯一的需要

解决方案 »

  1.   

    上面错误
    MyConn.Open();
    try

       …………

    catch()


    finally

       MyConn.Close();

    这是唯一的需要
      

  2.   

    connection应该保证如论如何都要关闭掉
      

  3.   

    Protected Friend Function ExecuteNonQuery(ByVal spName As String, ByVal aryParams() As SqlParameter) As Boolean
                Dim _tmpCmd As SqlCommand
                Dim _tmpSDA As SqlDataAdapter
                Dim returnTmp As Boolean            objConn = New SqlConnection(ConnectionString)
                _tmpCmd = New SqlCommand(spName, objConn)
                _tmpCmd.CommandType = CommandType.StoredProcedure            Dim i As Integer
                For i = 0 To aryParams.Length - 1
                    _tmpCmd.Parameters.Add(aryParams(i))
                Next
                Try
                    objConn.Open()
                    _tmpSDA = New SqlDataAdapter(_tmpCmd)
                Catch ex As System.Data.SqlClient.SqlException
                    Throw ex
                    returnTmp = False
                Finally
                    _tmpSDA.Dispose()
                    _tmpCmd.Dispose()
                    _tmpSDA = Nothing
                    _tmpCmd = Nothing
                    objConn.Dispose()
                    objConn = Nothing
                    returnTmp = True
                End Try
                Return returnTmp
            End Function
      

  4.   

    但是如果你读取了较大的数据到DataSet中的话 用完了最好析构掉!