繁体   English   中英

无法连接到本地SQL数据库

[英]Can't Connect to Local SQL Database

这个:

SqlConnection myConnection = new SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename='C:\\Users\\Joe\\Documents\\Visual Studio 2012\\Projects\\FileIO\\FileIO\\Database.mdf';Integrated Security=True");
try
{
   myConnection.Open();
}
catch (Exception e)
{
   Console.WriteLine(e.ToString());
}

返回此错误:

System.Data.dll中发生了类型为'System.Data.SqlClient.SqlException'的第一次机会异常System.Data.SqlClient.SqlException:建立与SQL Server的连接时发生了与网络相关或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称正确,并且已将SQL Server配置为允许远程连接。 (提供者:命名管道提供程序,错误:40-无法打开与SQL Server的连接)

有任何想法吗?

您在数据源上缺少双反斜杠。 它正在读取\\v作为垂直选项卡。

或者,您可以在整个字符串之前使用前导@ ,将其视为逐字字符串(如果这样做,则需要清除文件路径上的多余反斜杠)。

(从建立与SQL Server的连接时发生的错误中复制)

该问题与该应用程序不在.net版本4.0中运行有关

根据以下页面: http : //www.connectionstrings.com/sql-server-2012#sqlconnection

您需要.net 4.0及更高版本才能使用命名管道:

4.0.2之前的.NET框架版本不支持Server =(localdb)语法。 但是,命名管道连接可以将4.0.2之前的应用程序连接到LocalDB实例。

SqlLocalDB.exe create MyInstance
SqlLocalDB.exe start MyInstance
SqlLocalDB.exe info MyInstance

该信息提供了命名管道,然后可以在连接字符串中使用它:

<add name="conn" 
providerName="System.Data.SqlClient" 
connectionString="Server=np:\\.\pipe\LOCALDB#B1704E69\tsql\query"/>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM