Aracılığıyla paylaş


SQL projesi inşa sorunlarını giderme

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 -bl
    
  • Dosya 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
  • Sistem nesneleri. Tavsiye:
  • Dış başvurular. Tavsiye:

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 found​iç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: