我使用 SqlLocalDb.msi 包安装了 LocalDb,我可以使用服务器名称使用 SSMS 连接到它(LocalDb)\v11.0
。到现在为止还挺好。问题是当我尝试通过 .NET 4.5 应用程序连接到它时出现错误
服务器未找到或无法访问。
我从连接字符串开始Data Source=(LocalDb)\v11.0
,然后添加了许多无济于事的东西(集成安全 true/sspi、附加数据库、使用实例等)
我完全无法使用包括 MSSMA、sqlcmd 等在内的任何工具连接到 localdb。你会认为 Microsoft 会记录这一点,但我在 MSDN 上一无所获。我有v12并尝试过(localdb)\v12.0
,但没有奏效。发出命令sqllocaldb i MSSQLLocalDB
显示本地实例正在运行,但无法连接到它。
c:\> sqllocaldb i MSSQLLocalDB
Name: MSSQLLocalDB
Version: 12.0.2000.8
Shared name:
Owner: CWOLF-PC\cwolf
Auto-create: Yes
State: Running
Last start time: 6/12/2014 8:34:11 AM
Instance pipe name: np:\\.\pipe\LOCALDB#C86052DD\tsql\query
c:\>
c:\> sqlcmd -L
Servers:
;UID:Login ID=?;PWD:Password=?;Trusted_Connection:Use Integrated Security=?;
*APP:AppName=?;*WSID:WorkStation ID=?;
我终于想通了!! 连接字符串是(localdb)\MSSQLLocalDB
,例如:
$ sqlcmd -S \(localdb\)\\MSSQLLocalDB
1> select 'hello!'
2> go
------
hello!
(1 rows affected)
使用(localdb)\MSSQLLocalDB
. 这是用于应用程序的 LocalDB 实例,独立于 Visual Studio 版本。
忽略我原来的答案:“使用 SQL Server 2014 Express LocalDB,使用(localdb)\ProjectsV12
. 这在 Visual Studio 2013 和 SQL Server 2014 Management Studio 中都有效。” 虽然 ProjectsV12 确实会为您提供 LocalDB 实例,但它是错误的,旨在供SQL Server Data Tools 使用。
我认为您遇到了与本文中讨论的相同的问题。你忘了逃避你的\
角色。
(localdb)\MSSQLLocalDB
与_Windows Auth
我能够使用“(LocalDb)\Projects”从 SSMS 进行连接。这也是它在 VS2012 中出现的方式。
<add name="Default" connectionString="Data Source=(LocalDb)\MSSqlLocalDB; Initial Catalog=CRM_Default_v1; Integrated Security=True"
providerName="System.Data.SqlClient"/>
您在 Visual Studio 中的 web.config 文件 connectiionString 或转到查看 > SQL Server 对象查看器 > 添加 Sql Server> 在此处添加您的服务器
您可以使用 MSSMS 连接到 LocalDB。仅输入 SERVER NAME: (localdb)\v11.0并通过 Windows 身份验证保留它,它会连接到您的 LocalDB 服务器并向您显示其中的数据库。
你的连接字符串应该像`
Data Source=(localdb)\ProjectsV13;Initial Catalog=master;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False
假设:SqlConnection connectionObj = new SqlConnection()
对于:connectionObj.ConnectionString -> 使用服务器名称:(localdb)\\MSSQLLocalDB。
注意:双反斜杠
对于:App.config -> 使用服务器名称:(localdb)\MSSQLLocalDB
注意:单反斜杠
要从 Microsoft SQL Server Management Studio 或 VS2019 及更高版本连接到 LocalDB,请使用服务器名称作为(LocalDB)\MSSQLLocalDB
Windows 身份验证