Microsoft phân phối các bản sửa lỗi Microsoft SQL Server 2008 là 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 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 đó.
Triệu chứng
Hãy xem xét tình huống sau:
-
Bạn chạy truy vấn song song sử dụng hàm row_number trong Microsoft SQL Server 2008.
-
Bạn cố gắng chạy truy vấn bằng cách dùng truy vấn phụ nằm bên trong một câu lệnh Select hoặc tuyên bố ngôn ngữ thao tác (DML).
Trong trường hợp này, bạn gặp một trong các vấn đề sau:
-
Bạn nhận được kết quả không đúng nếu bạn chạy truy vấn bên trong câu lệnh Select nhiều lần.
-
Bảng có thể chứa dữ liệu không đúng nếu truy vấn chạy bên trong một câu lệnh DML. Nếu bảng có ràng buộc, câu lệnh có thể không thành công với vi phạm hạn chế. Ví dụ: câu lệnh chèn có thể không thành công và lỗi vi phạm khóa chính xảy ra nếu bảng có khóa chính.
Lưu ý Những vấn đề này có thể xảy ra trong một trong các trường hợp sau đây:
-
Bạn đặt tùy chọn gợi ý truy vấn Maxdop thành một giá trị lớn hơn 2.
-
Bạn đã đặt tùy chọn mức độ bình phương tối đa thành một giá trị lớn hơn 2 trong cấu hình máy chủ.
Giải pháp
Để giải quyết sự cố này, có được gói dịch vụ mới nhất dành cho SQL Server 2008. Để 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:
968382 Cách tải gói dịch vụ mới nhất cho SQL Server 2008
Cách giải quyết
Để khắc phục sự cố này, hãy sử dụng một trong các phương pháp sau:
-
Bật gắn cờ theo dõi 4134 nếu bạn đã áp dụng một trong các bản Cập Nhật sau đây:
-
Gói Cập Nhật tích lũy 6 cho SQL Server 2008 hoặc gói Cập Nhật tích lũy mới cho SQL Server 2008
-
Gói Cập Nhật tích lũy 2 cho SQL Server 2008 gói dịch vụ 1 (SP1) hoặc gói Cập Nhật tích lũy mới cho SQL Server 2008 SP1
Để biết thêm thông tin về cách bật cờ theo dõi, hãy truy cập trang web MSDN sau đây:
-
-
Tham chiếu phần "giải pháp thay thế" trong bài viết cơ sở kiến thức Microsoft 970198. Để 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:
970198 Khắc phục: bạn nhận được kết quả không chính xác khi chạy một truy vấn sử dụng hàm row_number trong SQL Server 2008