Udostępnij za pośrednictwem


Narzędzia projektów SQL

Narzędzia dla projektów SQL są dostępne w kilku środowiskach deweloperskich i interfejsach wiersza polecenia. Podstawowe narzędzia dla projektów SQL to narzędzie wiersza polecenia SqlPackage , narzędzia SQL Server Data Tools (SSDT) w programie Visual Studio oraz rozszerzenie SQL Database Projects dla programu Visual Studio Code.

Narzędzia zawarte w tym artykule:

Narzędzia graficzne

Te narzędzia udostępniają interfejs graficzny dla projektów SQL, edytora języka T-SQL oraz procesu kompilacji i publikowania.

Rozszerzenie SQL Database Projects to rozszerzenie programu Visual Studio Code. To rozszerzenie udostępnia interfejs graficzny dla projektów SQL, edytor języka T-SQL oraz proces kompilacji i publikowania.

Metodyka DevOps bazy danych w programie SQL Server Management Studio (SSMS) udostępnia interfejs graficzny dla projektów SQL, edytor języka T-SQL oraz proces kompilacji i publikowania.

SQL Server Data Tools (SSDT) to składnik programu Visual Studio , który udostępnia interfejs graficzny dla projektów SQL. Narzędzie SSDT udostępnia projektanta wizualnego dla tabel, edytora języka T-SQL oraz procesu kompilacji i publikowania.

Porównanie zestawu funkcji

Funkcja VS Code SSMS SSDT (VS2022-2026) SSDT w stylu SDK, wersja zapoznawcza (VS2022)
Tworzenie nowego pustego projektu Tak Tak Tak Tak
Tworzenie nowego projektu z istniejącej bazy danych Tak Tak Tak Tak
Otwieranie istniejących projektów Microsoft.Build.Sql Tak Tak Nie. Tak
Otwórz projekty w oryginalnym stylu (SSDT) Tak Nie. Tak Nie.
Zarządzanie rozwiązaniami i operacje Nie. Tak Tak Tak
Uruchomienie procesu kompilacji projektu Tak Tak Tak Tak
Publikowanie projektu na istniejącym serwerze Tak Tak Tak Tak
Publikowanie projektu w lokalnej instancji deweloperskiej Tak1 Tak2 Tak3 Tak3
Opcje/właściwości publikowania Tak Nie. Tak Tak
Platformę docelową można zaktualizować Tak Tak Tak Tak
Zmienne SQLCMD Tak Tak Tak Tak
Odwołania do projektu Tak Tak Tak Tak
Odwołania do DACPAC Tak Tak Tak Tak
Odwołania do pakietów Tak Tak Nie. Nie.
Publikowanie tworzenia profilu Tak Tak Tak Tak
Pliki SQL można dodawać, umieszczając je w folderze projektu Tak Tak Nie. Tak
Pliki SQL można wykluczyć z kompilacji Tak Tak Tak Nie.
Skrypty przed wdrożeniem i po wdrożeniu Tak Tak Tak Tak
Nowe szablony obiektów Tak4 Tak4 Tak Tak4
Pliki projektu można organizować w foldery Tak Tak Tak Tak
Projekt porównania schematu z bazą danych Tak Nie. Tak Tak
Baza danych porównania schematów do projektu Tak Nie. Tak Nie.
Graficzny projektant tabel Nie. Nie. Tak Tak
Analiza kodu — włączanie/wyłączanie graficznego interfejsu użytkownika reguł Tak Tak Tak Nie.
Właściwości projektu — ustawienia danych wyjściowych kompilacji Nie. Nie. Tak Tak
Właściwości projektu — graficzny interfejs użytkownika ustawień bazy danych Nie. Nie. Tak Nie.
Analiza kodu uruchamiania projektu Tak Tak Tak Nie.
Zmiana nazwy obiektu i refaktoryzacja Nie. Nie. Tak Nie.
Funkcja IntelliSense udostępniana w plikach bazy danych pochodzących z modelu projektu Nie. Nie. Tak Nie.
  1. Lokalne wystąpienie programistyczne to kontener programu SQL Server.
  2. Dowolna wstępnie zainstalowana baza danych Microsoft SQL Database może służyć jako lokalne wystąpienie programistyczne.
  3. Lokalne wystąpienie programistyczne to wystąpienie programu SQL Server LocalDB.
  4. Ograniczony podzbiór dostępnych szablonów

Narzędzia wiersza polecenia

SqlPackage to podstawowe narzędzie wiersza polecenia dla biblioteki DacFx, które umożliwia automatyzację zadań tworzenia bazy danych, takich jak wdrażanie .dacpac elementu w bazie danych lub wyodrębnianie obiektów bazy danych do projektu SQL lub .dacpac.

Niestandardowe aplikacje konsolowe można tworzyć przy użyciu biblioteki .NET DacFx w celu zautomatyzowania zadań tworzenia bazy danych. Przestrzeń nazw Microsoft.SqlServer.Dac zawiera klasy do tworzenia, wdrażania i wyodrębniania obiektów bazy danych oraz jest podstawą pozostałej części biblioteki DacFx.

Kanały CI/CD można budować za pomocą poleceń wiersza lub zadań specyficznych dla .dacpac oraz do wdrażania projektów SQL. GitHub sql-action i SqlAzureDacpacDeployment w usłudze Azure DevOps to przykłady zadań, które używają pakietu SqlPackage poniżej warstwy zarządzania w celu ułatwienia wdrażania zmian bazy danych.

Narzędzia konwersji

Proces konwertowania istniejącego projektu SQL na projekt w stylu zestawu SDK odbywa się przez ręczne edytowanie pliku w .sqlproj celu uwzględnienia nowego formatu projektu w stylu zestawu SDK. Przed rozpoczęciem procesu zaleca się zarówno utworzenie kopii zapasowej pliku projektu, jak i zarchiwizowanie .dacpac projektu. Porównując "przed" i "po" .dacpac skompilowany z projektu, możesz upewnić się, że proces konwersji został poprawnie ukończony.

Zarządzanie projektami/rozwiązaniami

Wiele projektów SQL (i innych projektów) może być logicznie zgrupowanych w pliku rozwiązania. Plik rozwiązania jest kontenerem dla co najmniej jednego projektu i służy do grupowego zarządzania projektami, w tym procesem kompilacji. Duże rozwiązania można podzielić na mniejsze w celu zwiększenia wydajności i możliwości zarządzania lub mogą być dynamicznie generowane dla odpowiedniego zadania. Generator plików rozwiązania slngen jest dostępny dla projektów Microsoft.Build.Sql i może służyć do tworzenia pliku rozwiązania dla zestawu projektów programowo i na żądanie.

Roadmap

Kwartalny plan działania dotyczący możliwości związanych z projektami SQL jest dostępny na stronie https://aka.ms/sqlprojects-roadmap. Opinie klientów mają duży wpływ na plan, który obejmuje zarówno modernizację możliwości projektów Microsoft.Build.Sql, jak i ulepszenia powierzchni narzędzi skojarzonych z projektami SQL.

Narzędzia innych firm

Dostępne są narzędzia innych firm, które zapewniają funkcje związane z projektami SQL i wdrażaniem bazy danych. Niektóre narzędzia to open source, takie jak dbatools.

Deweloperzy udostępnili swoje projekty korzystające z punktów rozszerzalności wokół projektów SQL, w tym reguł analizy kodu i dostosowywania planów wdrażania. Niektóre z tych projektów to: