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 SqlPackage narzędzie wiersza polecenia SQL Server Data Tools (SSDT) w Visual Studio oraz rozszerzenie SQL Database Projects dla Visual Studio Code.

Narzędzia zawarte w tym artykule:

Narzędzia graficzne

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

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

Database DevOps w SQL Server Management Studio (SSMS) udostępnia interfejs graficzny dla projektów SQL, edytora języka T-SQL oraz procesu kompilacji i publikowania.

SQL Server Data Tools (SSDT) to składnik 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 Visual Studio 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
Otwórz istniejący projekt 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
Projekt uruchomienie build 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 Tak Tak Tak
Platformę docelową można zaktualizować Tak Tak Tak Tak
Zmienne SQLCMD Tak Tak Tak Tak
Referencje 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 Nie. 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 Tak 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 - interfejs graficzny ustawień bazy danych Nie. Nie. Tak Nie.
Uruchom analizę kodu 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 Instancja lokalna rozwojowa jest kontenerem SQL Server.
2 Wszystkie wstępnie zainstalowane Microsoft bazy danych SQL mogą być używane jako lokalne wystąpienie programistyczne.
3 Lokalne wystąpienie deweloperskie to wystąpienie 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 DacFx .NET w celu zautomatyzowania zadań tworzenia bazy danych. Microsoft.SqlServer.Dac przestrzeń nazw zawiera klasy do tworzenia, wdrażania i wyodrębniania obiektów bazy danych i 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 Azure DevOps są przykładami 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 projektem/rozwiązaniem

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 mapę drogową, która obejmuje zarówno modernizację możliwości projektów Microsoft.Build.Sql, jak i ulepszenia narzędzi związanych 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 są 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: