【问题标题】:connect vb 2008 with sql server 2005 locally在本地连接 vb 2008 和 sql server 2005
【发布时间】:2010-09-21 03:27:05
【问题描述】:

我正在尝试在本地将 vb 2008 与 sql server 2005 连接。我在同一台笔记本电脑上有数据库,但总是出错。这是我的代码:

Dim strconn As String 
strconn = "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Database;Data Source=(local)" 
Try 
    Dim connection As New SqlClient.SqlConnection(strconn) 
    connection.Open() 
Catch ex As Exception 
    MessageBox.Show("failed") 
End Try 

如果我运行它,它会提示“失败”消息框。 代码有什么问题吗?我该怎么办

【问题讨论】:

    标签: visual-studio-2008 sql-server-2005 connection-string


    【解决方案1】:

    您发布的错误消息清楚地表明您在连接字符串中定义的服务器不可用。

    您可能使用的是 SQL Server Express 版本吗?如果您没有在安装程序中明确取消选中该选项,它将与 Visual Studio 2008 一起安装。

    Express 版本默认安装为SQLExpress 实例,因此您的连接字符串必须类似于:

    server=(local)\SQLExpress;database=databaseName;integrated security=SSPI; 
    

    在这种情况下。

    【讨论】:

    • 是的,好像找不到数据库。我不认为我使用的是 sql server express edition,因为当我点击开始>>所有程序>> Microsoft Sql Server 2005。所以它不是 sql server espress edition,对吧?
    【解决方案2】:

    您应该查看错误详细信息(ex 对象)以了解连接失败的确切原因:

    MessageBox.Show(ex.ToString())
    

    (我是一个花括号的人,所以我的 VB 可能有点不对)

    【讨论】:

    • 它显示:System.Data.SqlClient.SqlException:建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。 System.Data.SqlClient.SqlException:建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)
    • @Vina - 这意味着Data Source=(local) 位是错误的。您可以使用 Management Studio 连接到 SQL Server 吗?如果是这样,请复制并粘贴“服务器名称”字段的值,例如 Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Database;Data Source=MYMACHINE\SQLEXPRESS
    • 如何打开管理工作室?但我的笔记本电脑上也有 vb 2005,它可以使用服务器名称 localhost 连接到数据库。但是当我在这里尝试时,它失败了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多