Điều này có vẻ như một câu hỏi vô cùng ngu ngốc phải hỏi, nhưng làm thế nào để tôi có được SQL Server Management Studio ngừng xử lý một kịch bản SQL khi nó gặp một lỗi?Làm cách nào để có được SQL Server Management Studio ngừng xử lý lỗi?
Tôi có một tập lệnh dài và nếu có lỗi ở SSMS bắt đầu, hãy báo cáo và sau đó thực hiện một cách mù quáng, vặn vẹo nhiều thứ hơn nữa. Tôi không thể sử dụng giao dịch vì tập lệnh tạo một số cơ sở dữ liệu và không thể thực hiện giao dịch. Đó là việc tạo cơ sở dữ liệu mà đôi khi thất bại.
Toad cho SQL Server sẽ tạm dừng tại lỗi đầu tiên nó gặp và hỏi bạn có muốn dừng hoặc tiếp tục không. Đây là hành vi tôi đang tìm kiếm. Liệu nó tồn tại trong SSMS?
Tôi là không phải hỏi, "Làm thế nào để viết hoặc sửa đổi tập lệnh để nó dừng khi có lỗi?" Tôi không quan tâm đến việc sửa đổi tập lệnh của mình để thực hiện điều này, tôi chỉ muốn SSMS gửi đến dừng trên một lỗi. Toad cho SQL Server thực hiện chính xác điều này và đó là hành vi tôi muốn. Đây cũng không phải là bản sao của 659188 vì điều đó liên quan đến việc sửa đổi tập lệnh để dừng SSMS.
Thật mù quáng khi làm những gì bạn đã nói với nó! Bạn đã _tell_ nó dừng lại trên một lỗi? Liệu cùng một kịch bản có dừng lại nếu có lỗi từ ADO.NET hoặc từ một số công cụ thực thi kịch bản khác không? Vấn đề là kịch bản của bạn, không phải SSMS. –
Hầu hết các môi trường thực thi cấp cao hiện đại ngay lập tức dừng lại do lỗi. Trừ khi _told_ rõ ràng không dừng lại hoặc _told_ để phân nhánh cho các câu lệnh xử lý lỗi do lỗi. – yfeldblum
Giả sử đó là sự thật (và nếu tôi quan tâm, tôi sẽ yêu cầu bạn quay lại điều đó), những gì nó đã làm với câu hỏi, đó là về SQL Server. Ngữ nghĩa của một loạt các câu lệnh T-SQL không bao gồm việc dừng lỗi mà không được yêu cầu làm như vậy. Những ngữ nghĩa này không thay đổi đơn giản chỉ vì "hầu hết các môi trường thực thi cấp cao hiện đại nhất ngay lập tức dừng lại về lỗi". –