Applies ToSQL Server 2008 Service Pack 2 SQL Server 2008 R2

Microsoft phân phối Microsoft SQL Server 2008 và các bản sửa lỗi Microsoft SQL Server 2008 R2 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 SQL Server 2008 hoặc SQL Server 2008 R2.

Triệu chứng

Hãy xem xét tình huống sau:

  • Bạn tạo ấn phẩm giao dịch trong Microsoft SQL Server 2008 hoặc trong Microsoft SQL Server 2008 R2.

  • Bạn có một dạng xem được lập chỉ mục. Bạn đặt thuộc tính ANSI_NULLS của dạng xem chỉ mục là true.

  • Bạn thêm dạng xem được lập chỉ mục vào Ấn phẩm dưới dạng bài viết. Bạn đặt kiểu bài viết thành "căn cứ dạng xem được lập chỉ mục". Ghi chú Bạn có thể sử dụng mã sau đây để chỉ định kiểu dạng xem được lập chỉ mục. Hãy thực hiện điều này khi bạn chạy thủ tục sp_addarticle được lưu trữ để thêm bài viết được lập chỉ mục vào Ấn phẩm.

    @type = N'indexed view logbased'
  • Bạn tạo đăng ký cho Ấn phẩm giao dịch.

  • Dạng xem được lập chỉ mục sẽ được nhân rộng đến cơ sở dữ liệu đăng ký.

Trong trường hợp này, thuộc tính ANSI_NULLS của dạng xem được lập chỉ mục được thay đổi thành false trong cơ sở dữ liệu thuê bao.Lưu ý́

  • Sự cố này thường xảy ra khi ANSI_NULLS thuộc tính của các bảng tham gia vào cấu trúc biểu thức SQL của dạng xem chỉ mục được đặt là false.

  • Vấn đề này cũng tồn tại trong Microsoft SQL Server 2005.

Nguyên nhân

Sự cố này xảy ra vì bảng, dạng xem, hàm và thủ tục được lưu trữ trong SQL Server 2008 chia sẻ cùng một chút dung lượng lưu trữ cho thuộc tính ANSI_NULL . Do đó, nếu ANSI_NULLS thuộc tính của một trong các bảng có liên quan đến cấu trúc biểu thức SQL của dạng xem được lập chỉ mục là false, thuộc tính ANSI_NULLS mặc định cho dạng xem được lập chỉ mục sẽ là false.

Giải pháp

Thông tin Cập Nhật tích lũy

Gói dịch vụ SQL Server 2008 1

Bản sửa lỗi cho sự cố này lần đầu tiên được phát hành trong Cumulative Update 10 cho SQL Server 2008 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:

2279604 Gói Cập Nhật tích lũy 10 cho SQL Server 2008 gói dịch vụ 1Lư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:

970365 Bản dựng SQL Server 2008 đã được phát hành sau khi SQL Server 2008 Service Pack 1 đã được phát hành Các hotfix Microsoft SQL Server 2008 đượ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 của SQL Server 2008 gói dịch vụ 1 vào một bản cài đặt của SQL Server 2008 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.

Gói dịch vụ SQL Server 2008 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 Service Pack 2. Để 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:

2289254 Cập Nhật tích lũy 1 cho SQL Server 2008 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:

2402659 Bản dựng SQL Server 2008 đã được phát hành sau khi SQL Server 2008 Service Pack 2 đã được phát hành

SQL Server 2008 R2

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 Cumulative 4. Để biết thêm thông tin về cách tải gói Cập Nhật tích lũy cho SQL Server 2008 R2, hãy bấm số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:

2345451 Gói Cập Nhật tích lũy 4 cho SQL Server 2008 R2 Lư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:

981356 Bản dựng SQL Server 2008 R2 đã được phát hành sau khi SQL Server 2008 R2 được phát hành

Cách giải quyết

Để giải quyết vấn đề này, hãy Cập Nhật bộ đệm ẩn siêu dữ liệu sau khi dạng xem được lập chỉ mục được tạo và trước khi sp_addarticle được chạy để thêm bài viết dạng xem được lập chỉ mục.Lưu ý́ Để Cập Nhật bộ đệm ẩn siêu dữ liệu, hãy sử dụng một trong các phương pháp sau đây:

  • Dừng dịch vụ SQL Server, rồi khởi động dịch vụ.

  • Đặt cơ sở dữ liệu thuê bao sang ngoại tuyến, sau đó đặt cơ sở dữ liệu thành trực tuyến.

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ề quy trình được lưu trữ sp_addarticle, hãy truy cập trang web Microsoft sau đây:

Giới thiệu về quy trình được lưu trữ sp_addarticle (Transact-SQL)Để biết thêm thông tin về các đối tượng phát hành dữ liệu và cơ sở dữ liệu, hãy truy cập trang web Microsoft sau đây:

Phát hành đối tượng dữ liệu và cơ sở dữ liệuĐể 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

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.

Cộng đồng giúp bạn đặt và trả lời các câu hỏi, cung cấp phản hồi và lắng nghe ý kiến từ các chuyên gia có kiến thức phong phú.