Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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 VS Code. To rozszerzenie udostępnia interfejs graficzny dla projektów SQL, edytor języka T-SQL oraz proces kompilacji i publikowania. Rozszerzenie jest również dostępne w narzędziu Azure Data Studio z tą samą funkcjonalnością.
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 | SSDT (VS2022-2026) | SSDT w stylu SDK, wersja zapoznawcza (VS2022) |
|---|---|---|---|
| Tworzenie nowego pustego projektu | Tak | Tak | Tak |
| Tworzenie nowego projektu z istniejącej bazy danych | Tak | Tak | Tak |
| Otwieranie istniejących projektów Microsoft.Build.Sql | Tak | Nie. | Tak |
| Zarządzanie rozwiązaniami i operacje | Nie. | Tak | Tak |
| Uruchomienie procesu kompilacji projektu | Tak | Tak | Tak |
| Publikowanie projektu na istniejącym serwerze | Tak | Tak | Tak |
| Publikowanie projektu w lokalnej instancji deweloperskiej | Tak1 | Tak2 | Tak2 |
| Opcje/właściwości publikowania | Tak | Tak | Tak |
| Platformę docelową można zaktualizować | Tak | Tak | Tak |
| Zmienne SQLCMD | Tak | Tak | Tak |
| Odwołania do projektu | Tak | Tak | Tak |
| Odwołania do Dacpac | Tak | Tak | Tak |
| Odwołania do pakietów | Tak | Nie. | Nie. |
| Publikowanie tworzenia profilu | Tak | Tak | Tak |
| Pliki SQL można dodawać, umieszczając je w folderze projektu | Tak | Nie. | Tak |
| Pliki SQL można wykluczyć z kompilacji | Tak | Tak | Nie. |
| Skrypty przed/po wdrożeniu | Tak | Tak | Tak |
| Nowe szablony obiektów | Tak3 | Tak | Tak3 |
| Pliki projektu można organizować w foldery | Tak | Tak | Tak |
| Projekt porównania schematu z bazą danych | Tak | Tak | Tak |
| Baza danych porównania schematów do projektu | Tak | Tak | Nie. |
| Graficzny projektant tabel | Nie. | Tak | Tak |
| Analiza kodu — włączanie/wyłączanie graficznego interfejsu użytkownika reguł | Nie. | Tak | Nie. |
| Właściwości projektu — ustawienia danych wyjściowych kompilacji | Nie. | Tak | Tak |
| Właściwości projektu — graficzny interfejs użytkownika ustawień bazy danych | Nie. | Tak | Nie. |
| Analiza kodu uruchamiania projektu | Tak | Tak | Nie. |
| Zmiana nazwy obiektu i refaktoryzacja | Nie. | Tak | Nie. |
| Funkcja IntelliSense udostępniana w plikach bazy danych pochodzących z modelu projektu | Nie. | Tak | Nie. |
- Lokalne wystąpienie programistyczne to kontener programu SQL Server.
- Lokalne wystąpienie programistyczne to wystąpienie programu SQL Server LocalDB.
- 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.
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:
- https://github.com/tcartwright/SqlServer.Rules
- https://github.com/davebally/TSQL-Smells
- https://github.com/ErikEJ/SqlServer.Rules
- https://github.com/GoEddie/DeploymentContributorFilterer