sqlpackage.exe BlockOnPossibleDataLoss yok sayılıyor?


14

BlockOnPossibleDataLoss, false olarak ayarlanmış bir dacpac var, ancak sqlpackage.exe ile çalıştırdığınızda dağıtım engellenir "Bana sütun [a] bırakılıyor, veri kaybı olabilir."

Ancak tam olarak aynı dağıtım profilini kullandığımda ve Visual Studio 2012'den yayınladığım zaman geçiyor.

Yanıtlar:


11

/p:BlockOnPossibleDataLoss=falseKomut satırında sqlpackage.exe dosyasını çalıştırmayı denediniz mi?

Sadece test veritabanımın bir .dacpac dosyası oluşturmak için SQLPackage.exe kullandım, sonra /p:BlockOnPossibleDataLoss=falseseçeneği ile yayımladı ve veritabanımın üzerine yazdı .


Bunu denedim, ancak yardımcı olmadı. Sorunu biraz daha daralttım. Bir powershell betiği içinde paketi yürütmek ve orada bir try catch bloğu içinde. Bayrak sqlpackage.exe ayarlanmış olsa bile bir istisna oluşturur (başka türlü beklenir)
nojetlag

1
Bu, Azure Veritabanımız için Visual Studio Team System derlememizde bir Veritabanı dağıtım görevi yaparken bizim için harika çalıştı.
Dan Csharpster

2

Sonunda sorunu buldum, hata işleme gibi ayarlandığı bir powershell betiği içinde sqlpackage.exe yürütmek

$Script:ErrorActionPreference = "Inquire"

Ben asla Inquire var çünkü ben sqlpackage.exe ile sorun olduğunu kabul, ancak ErrorActionPreference ayarlandıktan sonra dahil başka bir powershell komut dosyası vardı, dahil komut dosyası da ErrorActionPreference ayarlanmış, ancak "Dur" vardı çıktı. Yine de ben BlockOnPossibleDataLoss = false ayarladıysanız bir hataya neden olmamalıdır, ama en azından şimdi işlemek için bir yolu var inanıyorum.


2

Aynı sorunu vardı ve / p: BlockOnPossibleDataLoss = false çalışmıyor.

Son çözüm benim durumumda, proje dosyasının hata ayıklama ayarlarında da ayarlanması gerektiğiydi:

Proje hata ayıklama ayarları

Umarım bu birine yardımcı olur! :)


ve doğrudan "yayınlıyorsanız", bu seçeneği "gelişmiş" yayınlama seçeneğinde de ayarlamanız gerekir!
Pac0
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.