是否必须使用。\ SQLEXPRESS作为AttachDBfilename关键字的数据源的值?

时间:2012-09-05 18:12:49

标签: .net sql-server ado.net connection-string sql-server-express

data source=.\SQLEXPRESS;Initial File Name=|DataDirectory|ASPNET.mdf;Integrated Security=SSPI;User Instance=true

我正在使用上面的连接字符串。它工作正常。但是当将数据源“。\ SQLEXPRESS”更改为“localhos”时,会引发错误“密钥'attachdbfilename'的值无效”。 我的第二个问题是关键字“用户实例”的用法是什么。

2 个答案:

答案 0 :(得分:1)

只有SQL Server Express Edition支持attachdbfilename选项。因此,您的数据源必须是Express实例。它可以命名为任何,它可以是默认实例,但它必须是Express版本。在您的情况下,您看起来有两个实例,一个名为SQLEXPRESS,一个名为{1}},名为SQLEXPRESS的是Express版本,而默认版本不是。{同样,重要的实例名称不是您要连接的引擎版本。

您无需了解任何有关用户实例的信息。忘了他们。

答案 1 :(得分:0)

您可以使用server代替data source进行本地连接:

Server=(local);Initial File Name=|DataDirectory|ASPNET.mdf;Integrated Security=SSPI;User Instance=true

使用用户实例是为计算机上管理有限的用户制作完全盛行的SQL Server实例。