1

我继承了一个 ASP.NET 项目,其中包含一个连接字符串,其中 DataSource 设置为:

"Data Source=.\\\sql2008"

我以前没有见过这种类型的东西。谁能解释一下是什么.\\\意思?此外,零件设置为的正确技术术语是sql2008什么?

非常感谢。

4

4 回答 4

1

句点 (.) 表示 sql server 与 asp.net 应用程序在同一个盒子上运行。

我的预感是您发布的连接字符串是从 ac# 字符串文字中提取的。\\ 实际上只是一个斜杠,但您需要在 C# 中对其进行转义,转义字符是另一个 \。

sql2008 是实例名称。Sql server 可以在一台主机上安装多次。默认实例只能有一个,可以在没有\InstanceName 后缀的情况下引用。您可以有多个命名实例。在连接字符串中使用命名实例后缀是您指定要连接到哪个实例的方式。

编辑:如果“datasource=sql2008”有效,那么您的服务器名称可能是 sql2008,并且您的数据库安装为默认实例。您可以通过检查服务控制面板小程序来确定您是否正在使用命名实例。如果您使用的是命名实例,则 sql 服务将被列为“SQL SERVER (MSSQLSERVER$INSTANCENAME)”。

于 2013-04-12T12:50:59.680 回答
0

您好,我使用它,如果这对您有帮助:

Data Source= server_name; Initial Catalog=database_name; User ID=user_id;Password=password

或尝试这样做:

Server=.\server_name;Database=database_name; User ID=user_id;Password=password
于 2013-04-12T12:55:28.450 回答
0

这是指在部署应用程序的机器上运行的本地 sql server 实例。sql2008 是正在连接的 sql server 的名称。

于 2013-04-12T12:47:07.217 回答
0

.\”总是表示从本地的当前位置开始

在 .NET 中,您可以通过在字符串前面放置 @ 或使用特殊值来表示要转义的字符来转义特殊字符。在这种情况下,您可以使用 \ 来表示 \

".\\" == @".\"

所以对我来说

"数据源=.\\SQLServer2005"等于@"数据源=.\SQLServer2005"

“数据源 =.\\SQLServer2005”“数据源 =.\\SQLServer2005”

我不明白这可能意味着什么......

你可以试试这个吗?

        SqlConnection cnn ;
        String connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password" 
        cnn = new SqlConnection(connetionString);
        try
        {
            cnn.Open();
            MessageBox.Show ("Connection Open ! ");
            cnn.Close();
        }
        catch (Exception ex)
        {
            MessageBox.Show("Can not open connection ! ");
        }

词汇:

数据来源:SQL服务器地址,如果涉及实例“SQL EXPRESS”请注意->请添加 ..myadress..\SQLEXPRESS

初始目录:来自您的 sql 服务器的数据库名称

UserId:在 sql server 上创建的用于访问定义的数据库的用户帐户

密码:是密码^^

于 2013-04-12T13:23:48.293 回答