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 projesi derleme çıkışı, veritabanı modeli oluşturma ve T-SQL doğrulaması hakkında geri bildirim sağlar. Varsayılan komut satırı çıkışı yalnızca hataları ve bazı durum bilgilerini gösterir. Bu makalede, SQL projelerinde karşılaşılan derleme sorunlarını ve yaygın hataları gidermek için daha ayrıntılı günlük kaydının nasıl etkinleştirileceğini ele alıyoruz.
Ayrıntılı günlük kaydını etkinleştir
SQL projelerinde derleme sorunlarını daha fazla gidermek için komut satırı anahtarlarını kullanarak daha fazla günlük oluşturabilirsiniz. Daha fazla günlük kaydı yalnızca hataların nedenini belirlemeye değil, aynı zamanda derleme hızında düşüşe de yardımcı olabilir. İki birincil seçenek şunlardır:
İkili günlükçü: Bu seçenek,
msbuild.binlogkullanılarak görüntülenebilen bir ikili günlük dosyası () oluşturur. Bu görüntüleyici bağımlılık sorunlarını tanılamak ve derleme işlemini iyileştirmek için yararlıdır. Bu günlüğü oluşturmak için komut şöyledir:dotnet build -blDosya günlüğü: Bu seçenek, derlemeden en ayrıntılı günlüğü içeren bir metin günlüğü dosyası oluşturur. Bu günlüğü oluşturmak için komut şöyledir:
dotnet build -flp:v=diag
Özetlemek gerekirse, her iki günlüğü de oluşturmak için birleştirilmiş komut şöyledir:
dotnet build -bl -flp:v=diag
Anahtar kümesinin tamamı MSBuild Command-Line Referansbulunabilir.
Yaygın sorunlar
Derleme hataları
Derleme hatası geçersiz söz dizimini gösterdiğinde çıkış, hatalı kodu içeren dosyayı da belirtir. Yakın zamanda eklenen söz dizimini kullanıyorsanız proje SDK'sı sürümünüzü güncelleştirmeniz gerekebilir.
Veritabanı projesinden derleme hatalarının, SQLxxxxx'in beş basamaklı bir sayı olduğu xxxxx hata koduna sahip olması gerekir. Çözümlenmemiş başvuru (SQL71501/SQL71502) hatasına neden olan bazı sorunlar şunlardır:
- Belirsiz nesne adları. Öneri:
- Tam olarak çözümlenmiş adları kullanma (
[schema].[table].[column]) - Nesneleri gerektiği gibi yeniden adlandırma
- Tam olarak çözümlenmiş adları kullanma (
- Sistem nesneleri. Tavsiye:
- paket başvurusu veya veritabanı başvurusuaracılığıyla ana veya msdb'ye başvuru ekleme
- Dış başvurular. Tavsiye:
- veritabanı başvurusuveya paket başvurusuiçin SQLCMD değişkenlerinin doğru ayarlandığından emin olun
Diğer hatalar
Geri yükleme sırasında oluşan bir hata için, önce projedeki /bin ve /obj klasörlerini sildikten sonra temiz bir derleme çalıştırın.
Hata SDK 'Microsoft.Build.Sql' specified could not be foundiçeriyorsa, NuGet paket akışlarının geçerli olduğunu doğrulayarak başlayın. Geçerli akışları görüntülemek için temel komut şöyledir:
dotnet nuget list source
Genel NuGet akışı şöyledir:
dotnet nuget add source https://api.nuget.org/v3/index.json -n nuget.org
Ortamınız özel beslemeler gerektiriyorsa, bunların geçerli ve erişilebilir olduğundan emin olun. Paket beslemeleriyle kimlik doğrulaması yapmanız gerekebilir. Proje derlemesi sırasında kimlik doğrulamasını etkinleştirme işlemi şu şekilde yapılabilir:
dotnet build --interactive
MSBuild için eşdeğer komut şöyledir:
msbuild /p:nugetInteractive=true
SQL dışı diğer hata kodları için aşağıdaki kaynaklara bakın:
- MSBuild hataları: MSBuild Başvuru
- NETSDK hataları: .NET SDK hata listesi
- NuGet hataları: NuGet Hataları ve Uyarıları Başvuru
İlgili içerik
- SQL projelerine genel bakış
- SQL projeleri araçları
- SqlPackage sorunlarını giderme