Как подключиться к LocalDB в Обозревателе серверов Visual Studio?

Я не могу поверить, что не смог найти рабочее решение для этого после часа поиска. Я следую в этой статье на Entity Framework 6.0, который сначала дает простой пошаговый код. Я создал проект и установил последнюю версию пакет EF Nuget для компиляции проекта. Я также проверил, что у меня установлен Microsoft SQL Server 2012 Express LocalDB, который поставляется с Visual Studio 2013. У меня нет других экземпляров SQL, установленных на моем локальный компьютер. Программа запускается, и записи добавляются в базу данных и выводятся в консоль. Но когда в статье говорится "проверьте свой localdb", он не говорит, как! Я ничего не вижу.МДФ или.LDF-файлы, созданные в папке проекта. Я пробовал каждый способ подключения проводника сервера Visual Studio к LocalDB. Мастер не может найти (localdb) или не может найти поставщика в Обозревателе серверов, чтобы принять строку подключения, например (localdb)v11.0;Integrated Security=true; Я видел, что это спрашивало несколько мест в StackOverflow, но нет ответ работает или помечен как ответ. Пожалуйста, помогите, это не должно быть таким разочарованием!

каковы шаги для подключения проводника сервера Visual Studio к LocalDB?

13 ответов


OK, отвечая на мой собственный вопрос.

шаги для подключения LocalDB к Visual Studio Server Explorer

  1. открыть командную строку
  2. Run SqlLocalDB.exe start v11.0
  3. Run SqlLocalDB.exe info v11.0
  4. скопировать имя канала экземпляра это начинается с np:\...
  5. в Visual Studio выберите сервис > подключение к базе данных...
  6. для имени сервера введите (localdb)\v11.0. Если это не сработало, используйте имя канала экземпляра что вы скопировали ранее. Это также можно использовать для подключения к среде SQL Management Studio.
  7. выберите базу данных в следующем раскрывающемся списке
  8. нажмите OK

enter image description here


на Visual Studio 2012 все, что мне нужно было сделать, это войти:

(localdb)\v11.0

Visual Studio 2015 и Visual Studio 2017 изменен на:

(localdb)\MSSQLLocalDB

в качестве имени сервера при добавлении Microsoft SQL Server Data источник:

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

и затем имена базы данных были заполнены. Мне не нужно было делать все остальные шаги в принятом ответе, хотя было бы неплохо, если бы имя сервера было доступно автоматически в имени сервера выпадающий список.

вы также можете просматривать имена базы данных LocalDB, доступные на вашем компьютере, используя:

View/SQL Server Object Explorer.

выбрать в :

  1. Источник: Microsoft SQL Server (SqlClient)
  2. имя сервера: (localdb)\MSSQLLocalDB
  3. вход на сервер: Use Windows Authentication

Нажмите кнопку Обновить, чтобы получить имя базы данных:)

Screenshot


Это сработало для меня.

  1. открыть командную строку
  2. Выполнить " SqlLocalDB.exe start"
  3. системный ответ "экземпляр LocalDB "mssqllocaldb" запущен."
  4. В VS, View / Server Explorer / (щелкните правой кнопкой мыши) подключения к данным / добавить соединение
    • источник данных: Microsoft SQL Server (SqlClient)
    • имя сервера: (localdb)\MSSQLLocalDB
    • вход на сервер: используйте проверку подлинности Windows
  5. нажмите "Проверить соединение", затем OK.

следующее работает с Visual Studio 2017 Community Edition в Windows 10 с помощью SQLServer Express 2016.

откройте 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. Когда он работает, вы видите Instance pipe name: начинается с np:\. Копию, что им колонны труб. В VS2017 открыть посмотреть Server Explorer и создать новое подключение типа Microsoft SQL Server (SqlClient) (Не обманывайтесь другими типами файлов, которые вы хотите полный тип соединения fat) и установите Server name: имя канала экземпляра, скопированное из PowerShell.

я тоже поставил Connect to database быть той же базой данных, которая была в строке подключения, которая работала в моем проекте ядра Dotnet / Entity Framework Core, который был настроен с помощью 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


использовать Обозреватель объектов SQL Server (SSOX) вместо

в отличие от других ответов, этот подход использует:
- Никаких специальных команд.
- Никаких сложных конфигураций.
Просто используйте Обозреватель объектов SQL Server

это довольно просто...

  • С посмотреть, открытого объект SQL Server Исследователь!--3-->.

one

  • щелкните правой кнопкой мыши {YourTableName} "таблица"> Конструктор

two

сделано.


Visual Studio 2015 RC, установлен LocalDb 12, аналогичные инструкции до, но по-прежнему не должны быть обязаны знать "magic", прежде чем использовать это, экземпляр по умолчанию должен быть включен ... Rant complete, no для решения:

cmd> sqllocaldb start

, который будет отображать

LocalDB instance "MSSQLLocalDB" started.

код экземпляр название может отличаться. В любом случае перейдите к VS и откройте Обозреватель серверов, щелкните правой кнопкой мыши подключения к данным, выберите Добавить, выберите SQL Server на сервере тип имени:

(localdb)\MSSQLLocalDB

не вводя имя БД, нажмите "Проверить соединение".


исправление не работает.

точно так же, как на примере иллюстрации, все эти шаги предоставляют доступ только к "системным" базам данных и не позволяют выбрать существующие пользовательские базы данных, к которым вы хотите получить доступ.

решение для доступа к локальному (не Express Edition) экземпляру Microsoft SQL server находится на стороне SQL Server:

  1. откройте диалоговое окно Выполнить (WinKey + R)
  2. типа: "услуги.msc"
  3. выберите SQL Server Браузер
  4. Выберите Свойства
  5. изменить "отключено" на "вручную"или " автоматически"
  6. когда кнопка" Пуск " службы получает включить, нажмите на нее.

готово! Теперь вы можете выбрать локальный SQL Server из списка имя сервера в свойствах подключения.


запустите CMD как admin.

  1. из меню "Пуск ""cmd" - подождите, пока он его найдет.
  2. щелкните правой кнопкой мыши на cmd и выберите Открыть как администратор
  3. тип: cd C:\Program файлы\Microsoft SQL Server\120\Tools\Binn
  4. тип: sqllocaldb пуск
  5. Теперь введите: sqllocaldb info
  6. показывает доступные запущенные экземпляры sql... выбирай, что хочешь...
  7. чтобы узнать больше об экземпляре тип : в sqllocaldb info instanceName

  8. теперь из VS вы можете настроить соединение В VS, View / Server Explorer / (щелкните правой кнопкой мыши) подключения к данным / добавить соединение Источник данных: Microsoft SQL Server (SqlClient) Имя сервера: (localdb)\MSSQLLocalDB Вход на сервер: используйте проверку подлинности Windows Нажмите кнопку "проверить подключение", затем "ОК".

  9. работу


самый быстрый способ в Visual Studio 2017-перейти к инструментам - > SQL Server - > новый запрос.. Выберите из локальных баз данных и выберите нужное имя базы данных внизу.

альтернативный способ

имя сервера Visual Studio 2017:

(localdb)\MSSQLLocalDB

добавить новое соединение с помощью меню Сервис - > подключиться к базе данных...


Я выполнил описанные выше шаги, но забыл установить SQL Server 2014 LocalDB перед конфигурацией Visual Studio 2015.

мои шаги следующие:

  1. установите SQL Server 2014 LocalDB;
  2. откройте Visual Studio 2015, а потом Обозреватель объектов SQL Server;
  3. найдите LocalDB под тегом SQL Server.

надеюсь, это поможет кому-нибудь.


сценарий: Windows 8.1, VS2013 Ultimate, SQL Express установлен и запущен, браузер SQL Server отключен. Это сработало для меня:

  1. сначала я включил браузер SQL Server в разделе "Службы".
  2. В Visual Studio: Откройте консоль диспетчера пакетов и введите:Включить-Миграций; Затем Введите Enable-Migrations-ContextTypeName YourContextDbName это создало папку миграции в VS.
  3. внутри Папка миграции вы найдете "конфигурация.cs " файл, включите автоматическую миграцию по: AutomaticMigrationsEnabled = true;
  4. запустите приложение еще раз, среда создает DefaultConnection, и вы увидите новые таблицы из вашего контекста. Это новое соединение указывает на экземпляр. Созданная строка подключения показывает: источник данных=(LocalDb)\v11.0 ... (дополнительные параметры и путь к созданному файлу МДФ)

теперь вы можете создать новое соединение с Имя сервера: (LocalDb)\v11.0 (нажмите Обновить) Подключение к базе данных: выберите новую базу данных в раскрывающемся списке.

надеюсь, это поможет.


С SQL Server 2017 и Visual Studio 2015 я использовал localhost\SQLEXPRESS

enter image description here