I can't believe I couldn't find a working solution to this after an hour of searching. I'm following this article on Entity Framework 6.0 which gives a simple walk-through on Code First. I created the project and installed the latest EF Nuget package for the project to compile. I also verified that I have Microsoft SQL Server 2012 Express LocalDB installed which came with Visual Studio 2013. I don't have any other instances of SQL installed on my local computer. The program runs and entries are added to the database and outputted in the console. But when the article says "check your localdb" it doesn't say how! I don't see any '.mdf' or '.ldf' files created under the project folder. I tried every way to connect Visual Studio's Server Explorer to LocalDB. The wizard cannot locate (localdb) or cannot find any provider in Server Explorer to accept connection string like (localdb)\v11.0;Integrated Security=true; I've seen this asked several places in StackOverflow but no answer works or marked as answer. Please help, this doesn't have to be this frustrating!

连接Visual Studio服务器资源管理器到LocalDB的步骤是什么?


当前回答

这对我很管用。

打开命令提示符 运行"SqlLocalDB.exe start" 输出说明"LocalDB instance "mssqllocaldb" started." 在VS中,查看/服务器资源管理器/(右键单击)数据连接/添加连接 数据来源:Microsoft SQL Server (SqlClient) 服务器名称:(localdb)\MSSQLLocalDB 登录服务器:使用Windows身份验证 按“测试连接”,然后确定。

其他回答

Visual Studio 2015 RC,已经安装了LocalDb 12,类似于之前的说明,但仍然不应该被要求知道“魔术”,在使用之前,默认实例应该已经打开… 咆哮完毕,无解:

cmd> sqllocaldb start

会显示

LocalDB instance "MSSQLLocalDB" started.

您的实例名可能不同。无论哪种方式,弹出到VS,打开服务器资源管理器,右键单击数据连接,选择添加,选择SQL Server,在服务器名类型中:

(localdb)\MSSQLLocalDB

不输入数据库名称,单击“Test Connection”。

使用SQL Server 2017和Visual Studio 2015,我使用本地主机\SQLEXPRESS

好的,回答我自己的问题。

连接LocalDB到Visual Studio Server Explorer的步骤

打开命令提示符 运行SqlLocalDB.exe start v11.0 执行SqlLocalDB.exe info v11.0命令 复制以np:\…开头的实例管道名 在Visual Studio中选择工具>连接到数据库… 对于服务器名输入(localdb)\v11.0。如果它不起作用,请使用前面复制的Instance管道名。您还可以使用它来连接SQL Management Studio。 在下一个下拉列表中选择数据库 单击OK

以下是使用SQLServer Express 2016在Windows 10上使用Visual Studio 2017 Community Edition进行的工作。

打开一个PowerShell,使用SqlLocalDB.exe info检查它的名称,以及它是否使用SqlLocalDB.exe info NAME运行。下面是它在我的机器上的样子:

> SqlLocalDB.exe info
MSSQLLocalDB
> SqlLocalDB.exe info MSSQLLocalDB
Name:               mssqllocaldb
Version:            13.0.1601.5
Shared name:
Owner:              DESKTOP-I4H3E09\simon
Auto-create:        Yes
State:              Running
Last start time:    4/12/2017 8:24:36 AM
Instance pipe name: np:\\.\pipe\LOCALDB#EFC58609\tsql\query
>

如果它没有运行,那么您需要使用SqlLocalDB.exe start MSSQLLocalDB启动它。当它运行时,你会看到实例管道名:,以np:\\开头。复制已命名的管道字符串。在VS2017中,打开服务器资源管理器视图,创建一个Microsoft SQL Server (SqlClient)类型的新连接(不要被你想要的完整连接类型的其他文件类型所迷惑),并将服务器名称:设置为从PowerShell复制的实例管道名称。

我还将连接到数据库设置为在我的Dotnet核心/实体框架核心项目中工作的连接字符串中的相同数据库,该项目使用Dotnet ef数据库更新设置。

你可以使用sqlcmd和命名管道字符串登录并创建一个数据库:

sqlcmd -S np:\\.\pipe\ localdb# EFC58609\tsql\query 创建数据库EFGetStarted.ConsoleApp.NewDb; 2 >

https://learn.microsoft.com/en-us/sql/tools/sqllocaldb-utility上有关于如何为应用程序创建用户的说明

请使用SQL Server对象资源管理器(SSOX)

与其他答案不同,这种方法使用: —无特殊命令。 —无复杂配置。 只需使用SQL Server对象资源管理器

这很简单……

从“视图”菜单中,打开SQL Server对象资源管理器。

右击{YourTableName}表>视图设计器

完成了。