使用 VB.Net 2012 访问本地 SQL Server 2012 Express 数据时出现以下错误。
与服务器成功建立连接,但在登录过程中出现错误。(提供者:TCP 提供者,错误:0 - 指定的网络名称不再可用。
与服务器成功建立连接,但在登录过程中出现错误。(提供者:共享内存提供者,错误:0 - 管道的另一端没有进程。
似乎连接没有被释放,因为我有一个具有完全相同代码(参数除外)的函数并且它工作了 3 次,但在第 4 天我收到了一个类似上面的错误。
代码:
Public Function LookupSQRIDX(Lotnumber As String, TableToUse As String, IDXFieldToUse As String, LotField As String, LotMatch As String, SearchLine As String) As String
Dim sConnection As String = "Server=MARIO\VSQL;Database=LEASE;User Id=cookieuser;Password=oreo;"
Dim objCommand As New SqlCommand
objCommand.CommandText = "Select top 1 " & IDXFieldToUse & " From [dbo].[" & TableToUse & "] where " & LotField & " like '%" & LotMatch & "' and line = '" & SearchLine & "' order by " & IDXFieldToUse
objCommand.Connection = New SqlConnection(sConnection)
objCommand.Connection.Open()
Dim objDataReader As SqlDataReader = objCommand.ExecuteReader()
Try
Dim NumCols, NumRows As Integer
Dim RowNum As Integer
Dim MyArray = ""
Dim Map1LastLot = "", Map2LastLot = ""
If objDataReader.HasRows Then
NumCols = objDataReader.FieldCount - 1
Do While objDataReader.Read()
RowNum = RowNum + 1
MyArray = objDataReader(0).ToString
Loop
NumRows = RowNum
objDataReader.Close()
objCommand.Dispose()
Return MyArray
Else
objDataReader.Close()
objCommand.Dispose()
Return ""
End If
Catch ex As Exception
MessageBox.Show("Error: " & ex.Message)
objDataReader.Close()
objCommand.Dispose()
Return ""
End Try
objDataReader.Close()
objCommand.Dispose()
End Function