Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
SQL projeleri için araçlar çeşitli geliştirme ortamlarında ve komut satırı arabirimlerinde kullanılabilir. SQL projeleri için birincil araçlar SqlPackage komut satırı yardımcı programı, Visual Studio'daki SQL Server Veri Araçları (SSDT) ve Visual Studio Code için SQL Veritabanı Projeleri uzantısıdır .
Bu makaledeki araçlar:
-
Grafik araçlar
- SQL Veritabanı Projeleri uzantısı
- SQL Server Veri Araçları
- Komut satırı araçları
Grafik araçlar
Bu araçlar SQL projeleri için grafik arabirim, T-SQL düzenleyicisi ve derleme ve yayımlama işlemi sağlar.
SQL Veritabanı Projeleri uzantısı, VS Code için bir uzantıdır. Bu uzantı SQL projeleri için grafik arabirim, T-SQL düzenleyicisi ve derleme ve yayımlama işlemi sağlar. Uzantı, Azure Data Studio'da da aynı işlevsellikle kullanılabilir.
SQL Server Veri Araçları (SSDT), SQL projeleri için grafik arabirim sağlayan bir Visual Studio bileşenidir. SSDT tablolar için görsel tasarımcı, T-SQL düzenleyicisi ve derleme ve yayımlama işlemi sağlar.
Özellik kümesi karşılaştırması
| Özellik | VS Code | SSDT (VS2022-2026) | SDK stili SSDT, önizleme (VS2022) |
|---|---|---|---|
| Yeni boş proje oluştur | Yes | Yes | Yes |
| Mevcut veritabanından yeni proje oluşturma | Yes | Yes | Yes |
| Mevcut Microsoft.Build.Sql projelerini açma | Yes | Hayı | Yes |
| Çözüm yönetimi ve işlemleri | Hayı | Yes | Yes |
| Proje derlemesi çalıştır | Yes | Yes | Yes |
| Projeyi var olan sunucuya yayımlama | Yes | Yes | Yes |
| Projeyi yerel geliştirme örneğine yayımlama | Evet1 | Evet2 | Evet2 |
| Yayımlama seçenekleri/özellikleri | Yes | Yes | Yes |
| Hedef platform güncelleştirilebilir | Yes | Yes | Yes |
| SQLCMD değişkenleri | Yes | Yes | Yes |
| Proje başvuruları | Yes | Yes | Yes |
| Dacpac referansları | Yes | Yes | Yes |
| Paket referansları | Yes | Hayı | Hayı |
| Yayın profili oluşturma | Yes | Yes | Yes |
| SQL dosyaları proje klasörüne yerleştirilerek eklenebilir | Yes | Hayı | Yes |
| SQL dosyaları derlemenin dışında tutulabilir | Yes | Yes | Hayı |
| Dağıtım öncesi/sonrası betikleri | Yes | Yes | Yes |
| Yeni nesne şablonları | Evet3 | Yes | Evet3 |
| Proje dosyaları klasörler halinde düzenlenebilir | Yes | Yes | Yes |
| Şema karşılaştırma projesi veritabanına | Yes | Yes | Yes |
| Şema karşılaştırması veritabanından projeye | Yes | Yes | Hayı |
| Grafik tablo tasarımcısı | Hayı | Yes | Yes |
| Kod analizi – kural GUI'sini etkinleştirme/devre dışı bırakma | Hayı | Yes | Hayı |
| Proje özellikleri – derleme çıktı ayarları | Hayı | Yes | Yes |
| Proje özellikleri – veritabanı ayarları GUI | Hayı | Yes | Hayı |
| Proje çalıştır kod analizi | Yes | Yes | Hayı |
| Nesne yeniden adlandırma ve yeniden düzenleme | Hayı | Yes | Hayı |
| Proje modelinin veritabanı dosyalarında İntellisense sağlanır. | Hayı | Yes | Hayı |
- Yerel geliştirme örneği bir SQL Server kapsayıcısıdır.
- Yerel geliştirme örneği bir SQL Server LocalDB örneğidir.
- Kullanılabilir şablonların sınırlı alt kümesi
Komut satırı araçları
SqlPackage , DacFx kitaplığının birincil komut satırı yardımcı programıdır ve veritabanına dağıtma .dacpac veya veritabanının nesnelerini bir SQL projesine veya .dacpacöğesine ayıklama gibi veritabanı geliştirme görevlerinin otomasyonunu etkinleştirir.
Özel konsol uygulamaları, veritabanı geliştirme görevlerini otomatikleştirmek için DacFx .NET kitaplığı kullanılarak oluşturulabilir. Microsoft.SqlServer.Dac ad alanı veritabanı nesneleri oluşturmak, dağıtmak ve ayıklamak için sınıflar içerir ve DacFx kitaplığının geri kalanının temelini oluşturur.
CI/CD işlem hatları, komut satırı yürütmesi veya .dacpac ve SQL projeleri dağıtımına özgü görevlerle oluşturulabilir. Azure DevOps'taki GitHub sql-action ve SqlAzureDacpacDeployment , veritabanı değişikliklerini dağıtmayı kolaylaştırmak için yönetim katmanı altında SqlPackage kullanan görevlere örnektir.
Dönüştürme araçları
Var olan bir SQL projesini SDK stili projeye dönüştürme işlemi, dosyayı yeni SDK stili proje biçimini içerecek şekilde el ile düzenleyerek .sqlproj gerçekleştirilir. İşleme başlamadan önce hem proje dosyasını yedeklemek hem de projenin bir .dacpac kısmını arşivlemek önerilir. Projeden oluşturulan bir "önce" ve "sonra" .dacpac karşılaştırması yaparak dönüştürme işleminin doğru şekilde tamamlandığından emin olabilirsiniz.
Proje/çözüm yönetimi
Birden çok SQL projesi (ve diğer projeler) bir çözüm dosyasında mantıksal olarak birlikte gruplandırılabilir. Çözüm dosyası bir veya daha fazla proje için bir kapsayıcıdır ve derleme eylemi de dahil olmak üzere projeleri grup olarak yönetmek için kullanılır. Büyük çözümler, performansı ve yönetilebilirliği geliştirmek için daha küçük çözümlere ayrılabilir veya eldeki uygun görev için dinamik olarak oluşturulabilir. slngen çözüm dosyası oluşturucu, Microsoft.Build.Sql projeleri için kullanılabilir ve program aracılığıyla ve isteğe bağlı olarak bir dizi proje için çözüm dosyası oluşturmak için kullanılabilir.
Üçüncü taraf araçlar
SQL projeleri ve veritabanı dağıtımıyla ilgili işlevler sağlayan üçüncü taraf araçlar vardır. Dbatools gibi bazı araçlar açık kaynaktır.
Geliştiriciler, kod analizi kuralları ve dağıtım planlarını özelleştirme de dahil olmak üzere SQL projelerinin genişletilebilirlik noktalarını kullanarak projelerini paylaştı. Bu projelerden bazıları şunlardır:
- https://github.com/tcartwright/SqlServer.Rules
- https://github.com/davebally/TSQL-Smells
- https://github.com/ErikEJ/SqlServer.Rules
- https://github.com/GoEddie/DeploymentContributorFilterer