Поделиться через


Расширение для проектов базы данных SQL

Это важно

Azure Data Studio прекратит работу 28 февраля 2026 г.. Мы рекомендуем вам использовать Visual Studio Code. Дополнительные сведения о миграции в Visual Studio Code см. в Что происходит с Azure Data Studio?

Расширение "Проекты баз данных SQL" — это расширение Visual Studio Code для разработки баз данных SQL в среде разработки на основе проекта. Совместимые базы данных включают SQL Server, Базу данных SQL Azure, Управляемый экземпляр SQL Azure, хранилище в Fabric и базу данных SQL в Fabric. Проект SQL — это локальное представление объектов SQL, составляющих схему для одной базы данных, например таблиц, хранимых процедур или функций. При построении проекта базы данных SQL выходной артефакт является файлом .dacpac . Новые и существующие базы данных можно обновить, чтобы они соответствовали содержимому .dacpac, публикуя проект базы данных SQL с расширением "Проекты баз данных SQL", или публикуя .dacpac с использованием интерфейса командной строки SqlPackage.

Снимок экрана: сводка проектов базы данных SQL, содержащих скрипты предварительного развертывания и скрипты после развертывания, а также объекты базы данных.

Дополнительные сведения о концепциях проектов SQL см. в разделе "Что такое проекты базы данных SQL"?

Функции расширения

Расширение "Проекты баз данных SQL" предоставляет следующие функции:

  • Создайте пустой проект Microsoft.Build.Sql.
  • Создайте проект из подключенной базы данных.
  • Откройте проект, созданный ранее в Visual Studio Code или в SQL Server Data Tools.
  • Изменение проекта путем добавления или удаления объектов (таблиц, представлений, хранимых процедур) или пользовательских скриптов в проекте.
  • Упорядочение файлов и скриптов в папках.
  • Добавьте ссылки на системные базы данных или на пользовательский dacpac файл.
  • Создание одного проекта.
  • Разверните один проект.
  • Загрузка сведений о подключении (проверка подлинности SQL Windows) и переменных SQLCMD из профиля развертывания.

Install

Расширение проекта базы данных SQL можно установить в Visual Studio Code.

Расширение "Проекты баз данных SQL" устанавливается с расширением mssql для Visual Studio Code.

Зависимости

Расширение SQL Database Projects зависит от .NET SDK (обязательно) и AutoRest.Sql (необязательно).

Пакет SDK для .NET

Пакет SDK для .NET необходим для функциональных возможностей сборки проекта, и вам будет предложено установить пакет SDK для .NET, если поддерживаемая версия не может быть обнаружена расширением. Пакет SDK для .NET можно скачать и установить для Windows, macOS и Linux.

Если вы хотите проверить установленные в настоящее время версии пакета SDK dotnet, откройте терминал и выполните следующую команду:

dotnet --list-sdks

После установки пакета SDK для .NET среда готова к использованию расширения "Проекты баз данных SQL".

Общие проблемы

Отсутствие Nuget.org в списке источников может привести к следующим сообщениям об ошибках:

  • error MSB4236: The SDK 'Microsoft.Build.Sql/0.1.9-preview' specified could not be found.
  • Unable to find package Microsoft.Build.Sql. No packages exist with this id in source(s): Microsoft Visual Studio Offline Packages

Чтобы проверить, зарегистрирован ли nuget.org в качестве источника, запустите dotnet nuget list source из командной строки и проверьте результаты на предмет элемента, который ссылается на nuget.org. Если nuget.org не зарегистрирован в качестве источника, запустите [Enabled].

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

  • error MSB4018: The "SqlBuildTask" task failed unexpectedly.
  • error MSB4018: System.TypeInitializationException: The type initializer for 'SqlSchemaModelStaticState' threw an exception. ---> System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=4.2.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified. [c:\Users\ .sqlproj]_ (где связанный несуществующий файл имеет неподходящую закрывающую квадратную скобку).

Чтобы принудительно заставить расширение для проектов баз данных SQL использовать версию 6.x SDK для .NET при установленных нескольких версиях, добавьте файл global.json в папку, содержащую проект SQL.

Дополнительные сведения об устранении неполадок сборки проектов SQL см. в разделе "Устранение неполадок сборки проекта SQL".

SQLCLR

Объекты SQLCLR в проектах баз данных не поддерживаются в Visual Studio Code, так как они полагаются на .NET Framework и расширение проектов баз данных SQL использует .NET для создания проектов.

Workspace

Проекты базы данных SQL содержатся в логической рабочей области (папке) в Visual Studio Code. Все проекты SQL, открытые в текущей рабочей области, доступны в представлении проектов базы данных SQL по умолчанию.

Вы можете вручную добавлять и удалять проекты из рабочей области с помощью интерфейса в области "Проекты ". При необходимости параметры рабочей области можно изменить вручную в файле .code-workspace.

В следующем примере файла .code-workspace массив folders перечисляет все папки, включенные в панель обозревателя, а массив dataworkspace.excludedProjects, находящийся в settings, перечисляет все проекты SQL, исключенные из области Проекты.

{
  "folders": [
    {
      "path": "."
    },
    {
      "name": "WideWorldImportersDW",
      "path": "..\\WideWorldImportersDW"
    }
  ],
  "settings": {
    "dataworkspace.excludedProjects": [
      "AdventureWorksLT.sqlproj"
    ]
  }
}