sqlpackage.exe bỏ qua BlockOnPossibleDataLoss?


12

Tôi có một dacpac đã đặt BlockOnPossibleDataLoss thành false, tuy nhiên việc triển khai bị chặn khi tôi chạy nó với sqlpackage.exe, nói với tôi "Cột [a] đang bị hủy, mất dữ liệu có thể xảy ra."

Tuy nhiên, khi tôi sử dụng cùng một hồ sơ triển khai và xuất bản từ Visual Studio 2012, nó sẽ đi qua.

Câu trả lời:


9

Bạn đã thử thực hiện sqlpackage.exe /p:BlockOnPossibleDataLoss=falsetrong dòng lệnh chưa?

Tôi chỉ sử dụng SQLPackage.exe để tạo tệp .dacpac của cơ sở dữ liệu thử nghiệm của mình, sau đó tôi sử dụng /p:BlockOnPossibleDataLoss=falsetùy chọn này và ghi đè lên cơ sở dữ liệu của tôi.


Tôi đã thử điều đó, tuy nhiên nó không giúp được gì. Tôi đã thu hẹp vấn đề hơn một chút. Tôi thực thi gói trong một tập lệnh powershell và ở đó nó nằm trong một khối bắt thử. Có vẻ như mặc dù cờ được đặt sqlpackage.exe tạo ra một ngoại lệ (tôi sẽ mong đợi khác)
nojetlag

1
Điều này làm việc rất tốt cho chúng tôi trong khi thực hiện một nhiệm vụ triển khai Cơ sở dữ liệu trong Hệ thống nhóm Visual Studio của chúng tôi để xây dựng Cơ sở dữ liệu Azure của chúng tôi.
Dan Csharpster

2

Cuối cùng cũng tìm thấy sự cố, tôi thực thi sqlpackage.exe trong tập lệnh powershell nơi xử lý lỗi được đặt như

$Script:ErrorActionPreference = "Inquire"

vì tôi chưa bao giờ nhận được thông tin. Tôi giả sử vấn đề là do sqlpackage.exe, tuy nhiên tôi có một tập lệnh powershell khác được bao gồm sau khi ErrorActionPreference được đặt, hóa ra tập lệnh đi kèm cũng có bộ ErrorActionPreference, nhưng là "Dừng". Tôi vẫn tin rằng nếu tôi đã đặt BlockOnPossibleDataLoss = false thì điều đó sẽ không gây ra lỗi, nhưng ít nhất bây giờ tôi có cách để xử lý nó.


2

Tôi đã có cùng một vấn đề và / p: BlockOnPossibleDataLoss = false không hoạt động.

Giải pháp cuối cùng là trong trường hợp của tôi, đó là nó cũng phải được đặt trong cài đặt gỡ lỗi của tệp dự án:

Cài đặt gỡ lỗi dự án

Hy vọng điều này sẽ giúp được ai đó! :)


và nếu bạn "xuất bản" trực tiếp, bạn cũng sẽ phải thiết lập tùy chọn này trong tùy chọn xuất bản "nâng cao"!
Pac0
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.