Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net VB链接SQL server问题_Vb.net - Fatal编程技术网

Vb.net VB链接SQL server问题

Vb.net VB链接SQL server问题,vb.net,Vb.net,我收到如下错误: 从类型“SqlConnection”到类型“String”的转换无效 我的VB代码是: Dim conn As New SqlConnection Dim cmd As New SqlCommand Dim da As New SqlDataAdapter Dim dt As New DataTable Dim sSQL As String = String.Empty Try conn = New SqlConn

我收到如下错误:

从类型“SqlConnection”到类型“String”的转换无效

我的VB代码是:

    Dim conn As New SqlConnection
    Dim cmd As New SqlCommand
    Dim da As New SqlDataAdapter
    Dim dt As New DataTable
    Dim sSQL As String = String.Empty
    Try
        conn = New SqlConnection(Get_Constring)
        conn.Open()
        cmd.Connection = conn
        cmd.CommandType = CommandType.Text
        sSQL = "SELECT * FROM HostTable"
        If Me.cboSearchBy.Text = "Name" Then
            sSQL = sSQL & " where HOSTNAME like '%" & Me.txtSearch.Text & "%'"
        ElseIf Me.cboSearchBy.Text = "Function" Then
            sSQL = sSQL & " where FUCTION like '%" & Me.txtSearch.Text & "%'"
        End If
        cmd.CommandText = sSQL
        da.SelectCommand = cmd
        da.Fill(dt)

        Me.dtgResult.DataSource = dt
        If dt.Rows.Count = 0 Then
            MsgBox("No record found!")
        End If
Function Get_Constring()
    If Microsoft.VisualBasic.Right(Application.StartupPath, 1) = "\" Then
        sConnstring = New SqlConnection("server=192.168.1.111\SQLSERVER;database=Common_DB;User ID=sa;Password=12345678")
    Else
        sConnstring = New SqlConnection("server=192.168.1.111\SQLSERVER;database=Common_DB;User ID=sa;Password=12345678")
    End If
    Return sConnstring
End Function
从类型“SqlConnection”到类型“String”的转换无效


这个错误信息非常清楚。无法将(新)SqlConnection转换为字符串(sConnstring)。

新SqlConnection
中硬编码的参数是实际的连接字符串

您可能需要编写类似以下内容:

sConnstring = "server=192.168.1.111\SQLSERVER;database=Common_DB;User ID=sa;Password=12345678"
myConnection = New SqlConnection(sConnstring)
因此,函数
Get\u Constring
应该只返回字符串,而不是整个连接

Function Get_Constring()
If Microsoft.VisualBasic.Right(Application.StartupPath, 1) = "\" Then
    sConnstring = "server=192.168.1.111\SQLSERVER;database=Common_DB;User ID=sa;Password=12345678"
Else
    sConnstring = "server=192.168.1.111\SQLSERVER;database=Common_DB;User ID=sa;Password=12345678"
End If
Return sConnstring

这应该按预期的方式工作。

此外,考虑在Onter选项中严格-强类型地返回和声明变量。或者只需使用
Return“server=192.168.1.111\SQLSERVER;database=Common\u DB;User ID=sa;Password=12345678”
并完全省去变量。