VB.net本地服务器数据库登录验证

时间:2015-04-18 19:13:21

标签: sql-server vb.net data-retrieval

我在项目中创建了一个基于服务器的数据库,以便我的程序可以直接在本地访问数据。但是,当我运行我的程序时,它似乎无法找到MDF,我收到以下错误消息:

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供程序:SQL网络接口,错误:26 - 查找指定的服务器/实例时出错)
    Dim con As New SqlConnection
    Dim cmd As New SqlCommand
    Dim rd As SqlDataReader

    con.ConnectionString = "Data Source=|DataDirectory|\Database.mdf;Integrated Security=true"
    cmd.Connection = con
    con.Open()
    cmd.CommandText = "select AdminID password from Admin where AdminID = '" & txtAdminID.Text & "' and AdminPassowrd = '" & txtPassword.Text & "' "
    rd = cmd.ExecuteReader
    If rd.HasRows Then
        Administration.Show()
    Else

        MessageBox.Show("Please re-enter your login credentials")

    End If

我试图从中提取数据的表存在,如您所知: enter image description here

enter image description here

enter image description here

我不确定为什么程序找不到MDF,因为它位于主目录中。

非常感谢任何帮助。谢谢!

2 个答案:

答案 0 :(得分:0)

您的错误消息是关于SQL Server的,因此问题可能是您没有使用正确的提供程序来访问MDF文件。您没有指定它,因此您可能正在获得默认的SQL Server oledb提供程序。

尝试在连接字符串中指定:Provider = Microsoft.ACE.OLEDB.12.0或Provider = Microsoft.Jet.OLEDB.4.0

有关详细信息,请参阅http://www.connectionstrings.com/access/

答案 1 :(得分:0)

我得到了它的工作。

con.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True"