Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nástroje pro projekty SQL jsou k dispozici v několika vývojových prostředích a rozhraních příkazového řádku. Primárními nástroji pro projekty SQL jsou nástroje příkazového řádku SqlPackage, SQL Server Data Tools (SSDT) v Visual Studio a rozšíření SQL Database Projects pro Visual Studio Code.
Nástroje zahrnuté v tomto článku:
Grafické nástroje
Tyto nástroje poskytují grafické rozhraní pro projekty SQL, editor Transact-SQL (T-SQL) a proces sestavení a publikování.
rozšíření SQL Database Projects je rozšíření pro Visual Studio Code. Toto rozšíření poskytuje grafické rozhraní pro projekty SQL, editor T-SQL a proces sestavení a publikování.
Database DevOps v SQL Server Management Studio (SSMS) poskytuje grafické rozhraní pro projekty SQL, editor T-SQL a proces sestavení a publikování.
SQL Server Data Tools (SSDT) je komponenta Visual Studio, která poskytuje grafické rozhraní pro projekty SQL. SSDT poskytuje vizuální návrhář pro tabulky, editor T-SQL a proces sestavení a publikování.
Porovnání sady funkcí
| Vlastnost | Visual Studio Code | SSMS | SSDT (VS2022-2026) | SSDT ve stylu sady SDK (náhled) (VS2022) |
|---|---|---|---|---|
| Vytvoření nového prázdného projektu | Ano | Ano | Ano | Ano |
| Vytvoření nového projektu z existující databáze | Ano | Ano | Ano | Ano |
| Otevřete existující projekty Microsoft.Build.Sql | Ano | Ano | Ne | Ano |
| Otevřít projekty s původním designem (SSDT) | Ano | Ne | Ano | Ne |
| Správa a provoz řešení | Ne | Ano | Ano | Ano |
| Sestavení projektu | Ano | Ano | Ano | Ano |
| Publikování projektu na existující server | Ano | Ano | Ano | Ano |
| Publikování projektu do místního vývojového prostředí | Ano1 | Ano2 | Ano3 | Ano3 |
| Možnosti nebo vlastnosti publikování | Ano | Ano | Ano | Ano |
| Cílovou platformu je možné aktualizovat. | Ano | Ano | Ano | Ano |
| Proměnné SQLCMD | Ano | Ano | Ano | Ano |
| Projektové reference | Ano | Ano | Ano | Ano |
| Odkazy NA DACPAC | Ano | Ano | Ano | Ano |
| Odkazy na balíčky | Ano | Ano | Ne | Ne |
| Publikování vytvoření profilu | Ano | Ne | Ano | Ano |
| Soubory SQL je možné přidat umístěním do složky projektu. | Ano | Ano | Ne | Ano |
| Soubory SQL je možné vyloučit z sestavení. | Ano | Ano | Ano | Ne |
| Skripty před nasazením a po nasazení | Ano | Ano | Ano | Ano |
| Nové šablony objektů | Ano4 | Ano | Ano | Ano4 |
| Project soubory lze uspořádat do složek. | Ano | Ano | Ano | Ano |
| Projekt porovnání schématu s databází | Ano | Ne | Ano | Ano |
| Porovnání schématu databáze s projektem | Ano | Ne | Ano | Ne |
| Grafický návrhář tabulek | Ne | Ne | Ano | Ano |
| Analýza kódu – povolení nebo zakázání grafického uživatelského rozhraní pravidel | Ano | Ano | Ano | Ne |
| Vlastnosti projektu – nastavení výstupu sestavení | Ne | Ne | Ano | Ano |
| vlastnosti Project – grafické uživatelské rozhraní pro nastavení databáze | Ne | Ne | Ano | Ne |
| Spusťte projekt analýzy kódu | Ano | Ano | Ano | Ne |
| Přejmenování objektů a refaktoring | Ne | Ne | Ano | Ne |
| IntelliSense poskytované v databázových souborech z modelu projektu | Ne | Ne | Ano | Ne |
1 Místní instance vývoje je kontejner SQL Server.
2 Jakoukoli předinstalovanou Microsoft databázi SQL je možné použít jako místní instanci vývoje.
3 Místní instance vývoje je instance SQL Server LocalDB.
K dispozici je 4 omezená podmnožina šablon.
Nástroje příkazového řádku
SqlPackage je primární nástroj příkazového řádku pro knihovnu DacFx, který umožňuje automatizaci úloh vývoje databáze, jako je nasazení .dacpac databáze nebo extrahování objektů databáze do projektu SQL nebo .dacpac.
Vlastní konzolové aplikace je možné vytvářet pomocí knihovny dacFx .NET k automatizaci úloh vývoje databáze. Microsoft. SqlServer.Dac obor názvů obsahuje třídy pro vytváření, nasazování a extrahování databázových objektů a je základem pro zbytek knihovny DacFx.
Kanály CI/CD lze vytvořit pomocí příkazového řádku nebo úlohami specifickými pro .dacpac a nasazení SQL projektů.
GitHub sql-action a SqlAzureDacpacDeployment v Azure DevOps jsou příklady úloh, které používají SqlPackage pod vrstvou správy k usnadnění nasazování změn databáze.
Nástroje pro převod
Proces převodu existujícího projektu SQL na projekt ve stylu sady SDK se provádí ruční úpravou .sqlproj souboru tak, aby zahrnoval nový formát projektu ve stylu sady SDK. Před zahájením procesu je doporučeno zálohovat soubory projektu a zároveň vytvořit archivní kopii .dacpac projektu. Porovnáním "před" a "po" .dacpac sestaveného z projektu se můžete ujistit, že byl proces převodu správně dokončen.
Project / správa řešení
V souboru řešení je možné logicky seskupit několik projektů SQL (a dalších projektů). Soubor řešení je kontejner pro jeden nebo více projektů a slouží ke správě projektů jako skupiny, včetně akce sestavení. Velká řešení je možné rozdělit na menší řešení, aby se zlepšil výkon a spravovatelnost nebo dynamicky vygenerovala pro příslušnou úlohu. Generátor souborů řešení slngen je k dispozici pro projekty Microsoft.Build.Sql a lze jej použít k programovému a okamžitému vytvoření souboru řešení pro sadu projektů.
Plán cesty
Čtvrtletní plán pro funkce související s projekty SQL je k dispozici na adrese https://aka.ms/sqlprojects-roadmap. Zpětná vazba zákazníků výrazně ovlivňuje plán, který zahrnuje jak modernizaci možností projektů Microsoft.Build.Sql, tak vylepšení rozhraní nástrojů přidružených k projektům SQL.
Nástroje třetích stran
K dispozici jsou nástroje třetích stran, které poskytují funkce související s projekty SQL a nasazením databáze. Některé nástroje jsou open source, například dbatools.
Vývojáři sdíleli své projekty s využitím bodů rozšiřitelnosti kolem projektů SQL, včetně pravidel analýzy kódu a přizpůsobení plánů nasazení. Mezi tyto projekty patří:
- https://github.com/tcartwright/SqlServer.Rules
- https://github.com/davebally/TSQL-Smells
- https://github.com/ErikEJ/SqlServer.Rules
- https://github.com/GoEddie/DeploymentContributorFilterer