Как изменить соединение в Редакторе SQL Server Data Tools в Visual Studio

моя цель-сохранить хранимые процедуры SQL Server в системе управления версиями. Я также хочу прекратить использование SQL Server Management Studio и использовать только Visual Studio для разработки, связанной с SQL.

я добавил новый проект базы данных SQL Server в свое решение. Я успешно импортировал свою схему базы данных в новый проект, и все объекты SQL (таблицы, хранимые процедуры) находятся в своих собственных файлах.

enter image description here

Я знаю, что теперь, если я бегу (с F5) the .файлы sql, то мои изменения будут применены к my (LocalDB). Это если хорошо, но что, если я хочу очень быстро запустить что-то на другой машине (например, выделенный SQL Server, общий для всей команды)? как я могу изменить строку подключения тока .файл sql в Редакторе SQL Server Data Tools?

у меня есть последняя версия расширения Sql Server Data Tools для Visual Studio 2012 (SQL Server Data Tools 11.1.31203.1). Я не знаю, связано ли это с текущая версия, но я больше не могу найти панель инструментов редактора Transact-SQL.

Я также попытался щелкнуть правой кнопкой мыши на Редакторе sql, выберите Connection - > Disconnect. Если я сделаю обратное (соединение - > Connect...) редактор напрямую подключается автоматически (возможно, к моему LocalDB), не спрашивая меня диалог выбора моего соединения.

еще одна странная вещь, которую я заметил, Если я попытаюсь запустить простой SQL-запрос (например,select * from dbo.ApplicationUser Я получаю следующее сообщение (даже если автозаполнение работает): enter image description here

спасибо.

(Примечание: у меня такая же проблема с Visual Studio 2013 с)

3 ответов


этой должны быть довольно простой и прямой вещью, чтобы сделать, то есть, если вы используете SSDT версии 12.0.41025.0 (или новее, можно было бы предположить):

  1. сделать что-либо:
    1. перейти к SQL меню в верхней части окна Visual Studio
    2. щелкните правой кнопкой мыши внутри вкладки редактора SQL
  2. на Connection ->
  3. выберите Change Connection

затем он отобразит "Connect на сервер " модальное диалоговое окно.

Если вы не видите опции "Отключить все запросы" и "изменить соединения...", тогда вам нужно обновить SSDT через:


вдохновленный комментариями srutzky, я установил последний пакет SSDT (12.0.41025). И бинго, как сказал srutzky, есть опция изменения соединения. Но более того, вы можете указать целевую БД, щелкнув правой кнопкой мыши на проекте в обозревателе решений и перейдя в свойства->отладка и изменение целевой строки подключения! Если вы застряли на более старом SSDT, то приведенные ниже инструкции все равно будут работать.


для SSDT 12.0.3 - Я тоже страдает от этой проблемы! Мое решение ниже, но у него есть некоторые плюсы и минусы...

решение

  1. я предполагаю, что вы используете проект SQL Server в VS (я использую VS2013 и SQL Server 2012).
  2. Правой Кнопкой Мыши на свой .sql-файл в обозревателе решений и свойства вида.
  3. изменить действие сборки на None.
  4. если файл открыт для редактирования, закройте его.
  5. открыть файл, и редактор T-SQL должен появиться вверху.
  6. нажмите Connect, и вы подключитесь к вашему (localdb).
  7. Нажмите Кнопку Отключить.
  8. Нажмите кнопку Подключиться еще раз, и появится диалоговое окно подключения SQL Server.
  9. переключите строку подключения '(localdb)\Whatever' to '.(по какой-то причине использование "(localhost) " не сработало для меня).

вуаля, теперь вы должны иметь возможность запрашивать свои SQL Server DBs! Промыть и повторять каждый файл, с которым вы хотите эту возможность... :/

плюсы

  • вы можете, наконец, запускать запросы непосредственно против вашего SQL Server DB
  • ваш код может быть организован в хорошем VS-решении (SSMS не разрешает папки! :/)
  • вы можете (после переключения настройки действия сборки обратно) построить проект

минусы

  • я не вижу автозаполнения / intellisense против удаленная БД, хотя если вы импортируете свою БД, то вы можете получить intellisense от этого
  • требует, чтобы каждый файл переключал действие сборки на None

самый быстрый способ достичь этого-создать новое соединение SQL, скопировать и вставить код, а затем выполнить.

Что я делаю, это инструменты - > SQL Server - >новый запрос. Введите учетные данные базы данных (и убедитесь, что база данных вверху верна - у меня есть сотни sp в моей главной БД на local :))

скопируйте исходный код из редактора, вставьте в новое окно запроса. Затем выполните (CRTL-Shift-E). Вы можете оставить это окно "царапины" открытым и закрепленным для удобства доступ для последующего выполнения.

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