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的步骤是什么?


当前回答

以下是使用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上有关于如何为应用程序创建用户的说明

其他回答

在Visual Studio 2012中,我所要做的就是输入:

(localdb)\v11.0

Visual Studio 2015和Visual Studio 2017更改为:

(localdb)\MSSQLLocalDB

添加Microsoft SQL server数据源时,将其作为服务器名:

View/Server Explorer/(Right click) Data Connections/Add Connection

然后填充数据库名称。我不需要在接受的答案中执行所有其他步骤,尽管如果服务器名称在服务器名称组合框中自动可用就更好了。

您还可以使用以下命令浏览机器上可用的LocalDB数据库名称:

View/SQL Server Object Explorer.

选择在:

数据来源:Microsoft SQL Server (SqlClient) 服务器名称:(localdb)\MSSQLLocalDB 登录服务器:使用Windows身份验证

按Refresh按钮获取数据库名称:)

https://aspblogs.blob.core.windows.net/media/dixin/Open-Live-Writer/89ee21b2c263_49AE/image_thumb_5.png Windows应用程序日志错误 计算机\HKEY_CURRENT_USER\软件\Microsoft\Microsoft SQL Server\UserInstances{2DD3D445-34C1-4251-B67D-7DFEED432A87}

只需将ParentInstance更改为MSSQL14E。LOCALDB或mssql15 .LOCALDB。

https://weblogs.asp.net/dixin/installing-sql-server-2017-2019-localdb-and-resolve-the-engine-versioning-problem?__r=8d90635095e1cd4

在Visual Studio 2017中最快的方法是转到Tools -> SQL Server -> New query..从Local databases中选择,并在底部选择所需的数据库名称。

替代方法

Visual Studio 2017服务器名称为:

(localdb)\MSSQLLocalDB

使用菜单工具添加新的连接->连接到数据库…

修理不起作用。

与示例插图中一样,所有这些步骤都只提供对“系统”数据库的访问,而没有选择要访问的现有用户数据库的选项。

访问本地(非Express Edition) Microsoft SQL server实例的解决方案驻留在SQL server端:

打开运行对话框(WinKey + R) 类型:“services.msc” 选择SQL Server浏览器 单击“属性” 将“禁用”改为“手动”或“自动” 当“Start”服务按钮启用时,单击它。

完成了!现在,您可以从连接属性中的“服务器名称”列表中选择本地SQL Server。