Microsoft phân phối Microsoft SQL Server 2008 R2 gói dịch vụ 1 (SP1) bản sửa lỗi trong một tệp được tải xuống. Vì bản sửa lỗi được tích lũy, mỗi bản phát hành mới chứa tất cả các hotfix và tất cả các bản Cập Nhật bảo mật được đưa vào bản phát hành SQL Server 2008 R2 gói dịch vụ 1 (SP1) bản Cập Nhật.
Triệu chứng
Hãy xem xét tình huống sau:
-
Bạn có ứng dụng máy khách chạy truy vấn trong Microsoft SQL Server 2008 R2 hoặc trong Microsoft SQL Server 2012.
-
Truy vấn sử dụng mệnh đề for XML trong chế độ đường dẫn .
-
Truy vấn sẽ chạy NO_BROWSETABLE đặt lệnh trên để cho phép NO_BROWSETABLE thiết đặt.
Trong trường hợp này, truy vấn sẽ không chạy. Ngoài ra, bạn nhận được thông báo lỗi sau đây trên ứng dụng máy khách và tệp Minidump sẽ được tạo trong Nhật ký lỗi SQL.
Msg 0, mức 11, bang 0, dòng 0A đã xảy ra lỗi nghiêm trọng trên lệnh hiện tại. Kết quả, nếu có, hãy loại bỏ. Msg 0, mức 20, bang 0, dòng 0A đã xảy ra lỗi nghiêm trọng trên lệnh hiện tại. Kết quả, nếu có, hãy loại bỏ.
Lưu ý́
-
Một gói truy vấn được dùng để chạy truy vấn không được biên soạn.
-
Không có sự kiện Profiler cho truy vấn không thành công khi bạn khởi động hồ sơ SQL Server.
-
Khi sự cố này xảy ra, Dịch vụ SQL Server sẽ tắt không liên tục.
Nguyên nhân
Sự cố này xảy ra do một lỗi nội bộ trong SQL Server algebrizer. Sự cố này xảy ra khi SQL Server cố gắng thêm các cột được kéo từ một bên của nút nối kết nối đến bên kia của nút nối kết nhà điều hành. Do đó, một cây algebrizer không hợp lệ được tạo bởi vì các cột được xác định ở một bên của nút nối kết sẽ không nhìn thấy được ở phía bên kia của nút nối kết nhà điều hành.
Giải pháp
Thông tin Cập Nhật tích lũy
SQL Server 2012
Bản sửa lỗi cho sự cố này lần đầu tiên được phát hành trong Cumulative Update 3 cho SQL Server 2012. Để biết thêm thông tin về gói Cập Nhật lũy tích này, hãy bấm số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
2723749 Gói Cập Nhật tích lũy 3 cho SQL Server 2012Lưu ý Vì bản dựng được tích lũy, mỗi bản phát hành khắc phục sự cố mới 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 phát hành khắc phục SQL Server 2012 trước đó. Microsoft khuyên bạn nên cân nhắc việc áp dụng bản phát hành khắc phục gần đây nhất có chứa các hotfix này. Để biết thêm thông tin, hãy bấm vào số bài viết sau đây để xem bài viết trong Cơ sở Kiến thức Microsoft:
2692828 Bản dựng SQL Server 2012 đã được phát hành sau khi SQL Server 2012 đã được phát hành Bạn phải áp dụng một hotfix SQL Server 2012 vào một bản cài đặt của SQL Server 2012.
Gói dịch vụ SQL Server 2008 R2 2
Bản sửa lỗi cho sự cố này lần đầu tiên được phát hành trong Cumulative Update 1 cho SQL Server 2008 R2 Service Pack 2. Để biết thêm thông tin về cách tải gói Cập Nhật tích lũy này, hãy bấm số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
2720425 Gói Cập Nhật tích lũy 1 cho SQL Server 2008 R2 gói dịch vụ 2Lưu ý Vì bản dựng được tích lũy, mỗi bản phát hành khắc phục sự cố mới 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 phát hành khắc phục SQL Server 2008 trước đó. Chúng tôi khuyên bạn nên cân nhắc việc áp dụng bản phát hành bản sửa lỗi gần đây nhất có chứa hotfix này. Để biết thêm thông tin, hãy bấm vào số bài viết sau đây để xem bài viết trong Cơ sở Kiến thức Microsoft:
2730301 Bản dựng SQL Server 2008 R2 đã được phát hành sau khi SQL Server 2008 R2 Service Pack 2 đã được phát hành
Gói Cập Nhật tích lũy 7 cho SQL Server 2008 R2 SP1
Bản sửa lỗi cho sự cố này lần đầu tiên được phát hành trong bản Cập Nhật tích lũy 7 cho SQL Server 2008 R2 Service Pack 1. Để biết thêm thông tin về gói Cập Nhật lũy tích này, hãy bấm số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
2703282 Gói Cập Nhật tích lũy 6 cho SQL Server 2008 R2 SP1Lưu ý Vì bản dựng được tích lũy, mỗi bản phát hành khắc phục sự cố mới 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 phát hành khắc phục SQL Server 2008 trước đó. Microsoft khuyên bạn nên cân nhắc việc áp dụng bản phát hành khắc phục gần đây nhất có chứa các hotfix này. Để biết thêm thông tin, hãy bấm vào số bài viết sau đây để xem bài viết trong Cơ sở Kiến thức Microsoft:
2567616 Bản dựng SQL Server 2008 R2 đã được phát hành sau khi SQL Server 2008 R2 SP1 đã được phát hành Các hotfix Microsoft SQL Server 2008 R2 được tạo cho các gói dịch vụ SQL Server cụ thể. Bạn phải áp dụng một hotfix gói dịch vụ SQL Server 2008 R2 vào một bản cài đặt của SQL Server 2008 R2 Service Pack 1. Theo mặc định, mọi hotfix được cung cấp trong gói dịch vụ SQL Server sẽ được đưa vào gói dịch vụ SQL Server tiếp theo.
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".
Cách giải quyết
Để giải quyết vấn đề này, hãy sử dụng một trong các phương pháp sau đây.
Phương pháp 1
Không sử dụng mệnh đề for XML trong chế độ đường dẫn .
Phương pháp 2
Chạy lệnh sau đây để tắt thiết đặt NO_BROWSETABLE :
ĐẶT NO_BROWSETABLE TẮT
Tham khảo
Để biết thêm thông tin về chế độ duyệt, hãy đi đến trang web MSDN sau đây:
Thông tin chung về chế độ duyệtĐể biết thêm thông tin về cách sử dụng chế độ đường dẫn với mệnh đề cho XML, hãy đi tới trang web MSDN sau đây: