Udostępnij za pośrednictwem


Rozszerzenie SQL Database Projects

Rozszerzenie SQL Database Projects to rozszerzenie Azure Data Studio i Visual Studio Code do tworzenia baz danych SQL w środowisku projektowym. Zgodne bazy danych obejmują programy SQL Server, Azure SQL Database, Azure SQL Managed Instance i Azure Synapse SQL. Projekt SQL to lokalna reprezentacja obiektów SQL, które składają się na schemat pojedynczej bazy danych, takich jak tabele, procedury składowane lub funkcje. Gdy projekt usługi SQL Database zostanie skompilowany, artefakt wyjściowy jest plikiem dacpac . Nowe i istniejące bazy danych można zaktualizować tak, aby były zgodne z zawartością pliku dacpac , publikując projekt usługi SQL Database za pomocą rozszerzenia SQL Database Projects lub publikując plik dacpac za pomocą interfejsu wiersza polecenia SqlPackage.

Podsumowanie projektów usługi SQL Database zawierających skrypty wdrażania wstępnego i po wdrożeniu, a także obiekty bazy danych.

Funkcje rozszerzenia

Rozszerzenie SQL Database Projects udostępnia następujące funkcje:

  • Utwórz nowy pusty projekt.
  • Utwórz nowy projekt na podstawie połączonej bazy danych.
  • Otwórz projekt utworzony wcześniej w narzędziu Azure Data Studio, Visual Studio Code lub SQL Server Data Tools.
  • Edytuj projekt, dodając lub usuwając obiekty (tabele, widoki, procedury składowane) lub niestandardowe skrypty w projekcie.
  • Organizowanie plików/skryptów w folderach.
  • Dodaj odwołania do systemowych baz danych lub pakietu dacpac użytkownika.
  • Skompiluj pojedynczy projekt.
  • Wdrażanie pojedynczego projektu.
  • Ładowanie szczegółów połączenia (uwierzytelnianie systemu WINDOWS SQL) i zmiennych SQLCMD z profilu wdrożenia.

Następujące funkcje w rozszerzeniu SQL Database Projects są obecnie dostępne w wersji zapoznawczej:

  • Utwórz nowe projekty na podstawie pliku specyfikacji interfejsu OpenAPI .
  • Projekty SQL w stylu zestawu SDK (Microsoft.Build.Sql).

Obejrzyj ten krótki 10-minutowy film wideo, aby zapoznać się z wprowadzeniem do rozszerzenia SQL Database Projects w narzędziu Azure Data Studio:

Instalowanie

Rozszerzenie projektu usługi SQL Database można zainstalować w programie Azure Data Studio i programie Visual Studio Code.

Azure Data Studio

Aby zainstalować rozszerzenie projektu usługi SQL Database w narzędziu Azure Data Studio, wykonaj następujące kroki:

  1. Otwórz menedżera rozszerzeń, aby uzyskać dostęp do dostępnych rozszerzeń. W tym celu wybierz ikonę rozszerzeń lub wybierz pozycję Rozszerzenia w menu Widok .

  2. Zidentyfikuj rozszerzenie SQL Database Projects , wpisując wszystkie lub część nazwy w polu wyszukiwania rozszerzenia. Wybierz dostępne rozszerzenie, aby wyświetlić jego szczegóły.

    Zrzut ekranu przedstawiający narzędzie Azure Data Studio, Instalowanie rozszerzenia.

  3. Wybierz żądane rozszerzenie i wybierz pozycję Zainstaluj .

  4. Wybierz pozycję Załaduj ponownie, aby włączyć rozszerzenie (wymagane tylko przy pierwszym zainstalowaniu rozszerzenia).

  5. Wybierz ikonę Projekty na pasku działań.

Uwaga

Zaleca się zainstalowanie rozszerzenia Porównanie schematów wraz z rozszerzeniem SQL Database Projects w celu zapewnienia pełnej funkcjonalności.

Visual Studio Code

Rozszerzenie SQL Database Projects jest instalowane z rozszerzeniem mssql dla programu Visual Studio Code.

Zależności

Rozszerzenie SQL Database Projects ma zależność od zestawu .NET SDK (wymagane) i rozwiązania AutoRest.Sql (opcjonalnie).

Zestaw SDK platformy .NET

Zestaw SDK platformy .NET jest wymagany w przypadku funkcji kompilacji projektu i zostanie wyświetlony monit o zainstalowanie zestawu SDK platformy .NET, jeśli nie można wykryć obsługiwanej wersji przez rozszerzenie. Zestaw .NET SDK można pobrać i zainstalować dla systemów Windows, macOS i Linux.

Jeśli chcesz sprawdzić aktualnie zainstalowane wersje zestawu dotnet SDK, otwórz terminal i uruchom następujące polecenie:

dotnet --list-sdks

Po zainstalowaniu zestawu SDK platformy .NET środowisko jest gotowe do korzystania z rozszerzenia SQL Database Projects.

Typowe problemy

Nuget.org brak z listy źródeł może spowodować wyświetlenie komunikatów o błędach, takich jak:

  • 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

Aby sprawdzić, czy nuget.org jest zarejestrowana jako źródło, uruchom polecenie dotnet nuget list source z wiersza polecenia i przejrzyj wyniki dla elementu odwołującego [Enabled] się nuget.org. Jeśli nuget.org nie jest zarejestrowana jako źródło, uruchom polecenie dotnet nuget add source https://api.nuget.org/v3/index.json -n nuget.org.

Nieobsługiwane wersje zestawu .NET SDK mogą powodować komunikaty o błędach, takie jak:

  • 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]_ (gdzie połączony nieistniejący plik ma niedopasowany nawias kwadratowy zamykający).

Aby wymusić, aby rozszerzenie SQL Database Projects używało wersji 6.x zestawu .NET SDK po zainstalowaniu wielu wersji, dodaj plik global.json do folderu zawierającego projekt SQL.

AutoRest.Sql

Rozszerzenie SQL dla autorest jest automatycznie pobierane i używane przez rozszerzenie SQL Database Projects, gdy projekt SQL jest generowany na podstawie pliku specyfikacji OpenAPI.

Ograniczenia

Obecnie rozszerzenie projektu usługi SQL Database ma następujące ograniczenia:

  • Zadania (kompilacja/publikowanie) nie są definiowane przez użytkownika.
  • Obiekty SQLCLR w projektach nie są obsługiwane.
  • Obecnie reguły analizy kodu w projektach nie są obsługiwane.

Obszar roboczy

Projekty bazy danych SQL znajdują się w logicznym obszarze roboczym w programie Azure Data Studio i programie Visual Studio Code. Obszar roboczy zarządza folderami widocznymi w okienku Eksplorator. Wszystkie projekty SQL w folderach otwartych w bieżącym obszarze roboczym są domyślnie dostępne w widoku Projekty usługi SQL Database.

Możesz ręcznie dodawać i usuwać projekty z obszaru roboczego za pośrednictwem interfejsu w okienku Projekty . W razie potrzeby ustawienia obszaru roboczego można edytować ręcznie w .code-workspace pliku.

W poniższym przykładowym .code-workspace pliku tablica folders zawiera listę wszystkich folderów zawartych w okienku Eksplorator i tablicę dataworkspace.excludedProjects w ramach settings listy wszystkich projektów SQL wykluczonych z okienka Projekty .

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