Triệu chứng
Hãy xem xét tình huống sau:
-
Bạn có cơ sở dữ liệu sử dụng BULK_LOGGED hoặc mô hình phục hồi đơn giản trong Microsoft SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 hoặc SQL Server 2014.
-
Bạn bật nút đặt XACT_ABORT .
-
Bạn cố gắng chạy nhiều câu lệnh chèn hàng loạt trong một giao dịch phân phối đơn.
Trong trường hợp này, câu lệnh chèn hàng loạt có thể không thành công và bạn nhận được thông báo lỗi sau đây:
Vị trí: pageref. cpp: 913Expression: IS_OFF (BUF_MINLOGGED, m_buf->bstat) | | pageModifyType! = PageModifyType_Contents | | GetPagePtr ()->IsTextPage () dịch vụ SPID: mã 56Quy trình: 2136Msg 3624, Level 20, State 1, kiểm tra xác nhận hệ thống dòng 7A đã không thành công. Kiểm tra Nhật ký lỗi SQL Server để biết chi tiết. Thông thường, một lỗi khẳng định là do lỗi phần mềm hoặc dữ liệu bị hỏng. Để kiểm tra tham nhũng của cơ sở dữ liệu, hãy cân nhắc chạy DBCC CHECKDB. Nếu bạn đồng ý gửi các bãi cho Microsoft trong khi thiết lập, một tệp mini sẽ được gửi đến Microsoft. Có thể có bản Cập Nhật từ Microsoft trong gói dịch vụ mới nhất hoặc trong QFE từ bộ phận hỗ trợ kỹ thuật. msg 0, mức 20, bang 0, dòng 0 một lỗi nghiêm trọng xảy ra trên lệnh hiện tại. Kết quả, nếu có, hãy loại bỏ.
Ngoài ra, tệp có chứa mini-dump có thể được tạo trong thư mục Nhật ký SQL Server. Lưu ý Sự cố này thường xảy ra khi sử dụng dịch vụ tích hợp SQL Server (SSIS). Ví dụ: điều phối viên giao dịch được phân phối của Microsoft (MS DTC) được liên quan đến bắt đầu các giao dịch phân phối cùng nhau với tập hợp XACT_ABORT vào nếu thuộc tính cấp gói tùy chọn transactionoption được đặt là bắt buộc.
Nguyên nhân
Sự cố này xảy ra do lỗi trong SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 hoặc SQL Server 2014.
Giải pháp
Vấn đề lần đầu tiên được khắc phục trong bản Cập Nhật tích lũy SQL Server sau đây.
Cập Nhật tích lũy 1 cho SQL Server 2014 /en-us/help/2931693
Cập Nhật tích lũy 8 cho SQL Server 2012 SP1 /en-us/help/2917531
Bản Cập Nhật tích lũy 10 cho SQL Server 2008 R2 SP2 /en-us/help/2908087
Bản Cập Nhật tích lũy 10 cho SQL Server 2008 SP1 /en-us/help/2279604
Cập Nhật tích lũy 1 cho SQL Server 2008 SP2 /en-us/help/2289254
Bản Cập Nhật tích lũy 5 cho SQL Server 2008 R2 /en-us/help/2438347
Mỗi bản Cập Nhật tích lũy mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật đã được đưa vào bản Cập Nhật tích lũy trước đó. Kiểm tra các bản Cập Nhật tích lũy mới nhất cho SQL Server:
Cách giải quyết
Để giải quyết vấn đề này, hãy đặt cơ sở dữ liệu thành mô hình phục hồi đầy đủ .
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Tham khảo
Để biết thêm thông tin về thiết đặt đặt XACT_ABORT , hãy truy cập website Microsoft Developer Network (MSDN) sau đây:
Thông tin chung về thiết đặt "đặt XACT_ABORT"Để biết thêm thông tin về các hoạt động được đăng nhập tối thiểu, hãy truy cập trang web MSDN sau đây:
Thông tin chung về các hoạt động được đăng nhập tối thiểuĐể biết thêm thông tin về cách duy trì tính toàn vẹn dữ liệu bằng cách sử dụng các giao dịch, hãy truy cập trang web MSDN sau đây:
Thông tin chung về cách duy trì tính toàn vẹn dữ liệu bằng cách sử dụng các giao dịchĐể biết thêm thông tin về mô hình dịch vụ gia tăng cho SQL Server, hãy bấm vào số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
935897 Mô hình dịch vụ gia tăng sẵn dùng từ nhóm SQL Server để cung cấp hotfixes cho các vấn đề được báo cáoĐể biết thêm thông tin về lược đồ đặt tên cho các bản Cập Nhật SQL Server, hãy bấm số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
822499Lược đồ đặt tên mới cho gói cập nhật phần mềm Microsoft SQL ServerĐể biết thêm thông tin về các thuật ngữ Cập nhật phần mềm, hãy bấm vào số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
824684 Mô tả thuật ngữ chuẩn được sử dụng để miêu tả các bản cập nhật phần mềm của Microsoft