262

经过一个小时的搜索,我无法相信我找不到一个可行的解决方案。我正在关注关于 Entity Framework 6.0 的这篇文章,它提供了关于 Code First 的简单演练。我创建了项目并安装了最新的EF Nuget 包以供项目编译。我还验证了我安装了 Visual Studio 2013 附带的 Microsoft SQL Server 2012 Express LocalDB。我的本地计算机上没有安装任何其他 SQL 实例。程序运行并将条目添加到数据库并在控制台中输出。但是当文章说“检查你的 localdb”时,它并没有说明如何!我没有看到在项目文件夹下创建的任何“.mdf”或“.ldf”文件。我尝试了各种连接 Visual Studio 的方法 s 服务器资源管理器到 LocalDB。向导找不到(localdb)或者在服务器资源管理器中找不到任何提供程序来接受连接字符串,就像(localdb)\v11.0;Integrated Security=true;我在 StackOverflow 中看到的那样询问了几个地方,但没有答案有效或标记为答案。请帮忙,这不必如此令人沮丧!

将 Visual Studio Server Explorer 连接到 LocalDB 的步骤是什么?

4

14 回答 14

315

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

(localdb)\v11.0

Visual Studio 2015Visual Studio 2017更改为:

(localdb)\MSSQLLocalDB

Microsoft SQL Server Data作为在以下位置添加源时的服务器名称:

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

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

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

View/SQL Server Object Explorer.
于 2014-10-13T15:37:27.033 回答
266

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

将 LocalDB 连接到 Visual Studio Server Explorer 的步骤

  1. 打开命令提示符
  2. SqlLocalDB.exe start v11.0
  3. SqlLocalDB.exe info v11.0
  4. 复制以 np:\... 开头的实例管道名称
  5. 在 Visual Studio 中,选择工具 > 连接到数据库...
  6. 对于服务器名称,输入(localdb)\v11.0。如果它不起作用,请使用您之前复制的实例管道名称。您还可以使用它来连接 SQL Management Studio。
  7. 在下一个下拉列表中选择数据库
  8. 点击确定

在此处输入图像描述

于 2014-02-04T23:24:56.413 回答
77

选择:

  1. 数据源:Microsoft SQL Server (SqlClient)
  2. 服务器名称:(localdb)\MSSQLLocalDB
  3. 登录到服务器:Use Windows Authentication

按刷新按钮获取数据库名称:)

截屏

于 2015-04-01T12:09:31.597 回答
39

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

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

这很简单......

  • 视图菜单中,打开SQL Server 对象资源管理器

一

  • 右键单击{YourTableName}表格 >查看设计器

二

完毕。

于 2017-01-28T04:40:06.273 回答
18

它对我有用。

  1. 打开命令提示符
  2. 运行“SqlLocalDB.exe 启动”
  3. 系统响应“LocalDB 实例“mssqllocaldb”已启动。”
  4. 在VS中, View/Server Explorer/(右键) Data Connections/Add Connection
    • 数据源:Microsoft SQL Server (SqlClient)
    • 服务器名称:(localdb)\MSSQLLocalDB
    • 登录服务器:使用 Windows 身份验证
  5. 按“测试连接”,然后确定。
于 2015-05-07T10:49:44.137 回答
9

以下内容适用于使用 SQLServer Express 2016 的 Windows 10 上的 Visual Studio 2017 Community Edition。

打开一个 PowerShell 检查它被称为 usingSqlLocalDB.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. 当它运行时,您会看到Instance pipe name:np:\\. 复制该命名管道字符串。在 VS2017 中打开视图Server Explorer并创建类型的新连接Microsoft SQL Server (SqlClient)(不要被您想要完整连接类型的其他文件类型所迷惑)并将 设置为Server name:您从 PowerShell 复制的实例管道名称。

我还将 设置为Connect to database与在使用dotnet ef database update.

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

sqlcmd -S np:\\.\pipe\LOCALDB#EFC58609\tsql\query 1> create database EFGetStarted.ConsoleApp.NewDb; 2> GO

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

于 2017-04-12T15:43:16.133 回答
7

修复不起作用。

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

访问本地(非 Express Edition)Microsoft SQL Server 实例的解决方案位于 SQL Server 端:

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

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

于 2014-09-25T13:15:53.587 回答
7

Visual Studio 2015 RC,已安装 LocalDb 12,与之前类似的说明,但仍然不需要知道“魔术”,在使用它之前,默认实例应该已经打开......咆哮完成,没有解决方案:

cmd> sqllocaldb start

哪个会显示

LocalDB instance "MSSQLLocalDB" started.

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

(localdb)\MSSQLLocalDB

在不输入数据库名称的情况下,单击“测试连接”。

于 2015-07-10T07:19:55.897 回答
4

以管理员身份运行 CMD。

  1. 从开始菜单'cmd' - 等待它找到它。
  2. 右键cmd,选择以管理员身份打开
  3. 类型:cd C:\Program Files\Microsoft SQL Server\120\Tools\Binn
  4. 类型:SqlLocalDB 启动
  5. 现在输入:SqlLocalDB 信息
  6. 显示可用的正在运行的 sql 实例...选择您想要的...
  7. 查找有关实例类型的更多信息:SqlLocalDB info instanceName

  8. 现在从VS你可以设置你的连接在VS中,查看/服务器资源管理器/(右键单击)数据连接/添加连接数据源:Microsoft SQL Server(SqlClient)服务器名称:(localdb)\MSSQLLocalDB登录到服务器:使用Windows验证 按“测试连接”,然后确定。

  9. 任务完成

于 2016-12-31T17:55:08.580 回答
3

Visual Studio 2017 中最快的方法是转到工具 -> SQL Server -> 新查询。从本地数据库中选择并在底部选择所需的数据库名称。

替代方式

Visual Studio 2017 服务器名称为:

(localdb)\MSSQLLocalDB

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

于 2017-06-21T17:04:59.010 回答
1

我按照上面的步骤进行操作,但是我忘记在 Visual Studio 2015 配置之前安装 SQL Server 2014 LocalDB。

我的步骤如下:

  1. 安装 SQL Server 2014 LocalDB;
  2. 打开 Visual Studio 2015,然后打开SQL Server 对象资源管理器
  3. 在 SQL Server 标记下找到您的 LocalDB。

希望这对任何人都有帮助。

于 2015-09-25T02:58:33.273 回答
1

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

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

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

于 2021-04-23T08:55:13.853 回答
0

场景:Windows 8.1,VS2013 Ultimate,SQL Express 已安装并运行,SQL Server Browser 已禁用。这对我有用:

  1. 首先,我在服务下启用了 SQL Server Browser。
  2. 在 Visual Studio 中:打开包管理器控制台,然后键入:Enable-Migrations;然后键入Enable-Migrations -ContextTypeName YourContextDbName ,它在 VS 中创建了 Migrations 文件夹。
  3. 在 Migrations 文件夹中,您将找到“Configuration.cs”文件,通过以下方式打开自动迁移: AutomaticMigrationsEnabled = true;
  4. 再次运行您的应用程序,环境将创建一个 DefaultConnection,您将在上下文中看到新表。这个新连接指向 localdb。创建的连接字符串显示:Data Source=(LocalDb)\v11.0 ...(更多参数和创建的mdf文件的路径)

您现在可以使用服务器名称创建新连接:(LocalDb)\v11.0(点击刷新) 连接到数据库:在下拉列表下选择您的新数据库。

我希望它有所帮助。

于 2015-05-15T18:27:37.313 回答
-1

With SQL Server 2017 and Visual Studio 2015, I used localhost\SQLEXPRESS

enter image description here

于 2017-12-04T23:16:00.373 回答