Áp dụng cho
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

Triệu chứng

Giả định rằng bạn đã có một bảng Microsoft SQL Server có một hoặc nhiều chỉ mục được xây dựng trên đó. Khi truy vấn của bạn đối với bảng, SQL Server có thể thực hiện các bộ đệm dữ liệu không nhất quán cho các cột CHAR và nhị phân. Hành vi không nhất quán để trở về dấu khoảng trống ở cuối cột dữ liệu CHAR và nhị phân tùy thuộc vào các điều kiện sau đây:

  • Các thiết đặt của ANSI_PADDING khi các cột được tạo trong bảng SQL Server.

  • Quyết định thực hiện việc quét bảng hoặc chỉ mục tìm kiếm trên các cột.

Nguyên nhân

Trong một số trường hợp, SQL Server có thể thực hiện tối ưu hóa cho phép bỏ qua nhiều thao tác để chuyển giao dữ liệu nhanh hơn. Sự cố xảy ra vì SQL Server không nhận ra rằng tối ưu hóa không thể áp dụng cho kịch bản trên đây.

Thông tin Bổ sung

Hành vi này của SQL Server không tuân thủ các hành vi được ghi lại trong bài viết sau đây: dùng dữ liệu Char và varchar.

Nếu ANSI_PADDING được bật khi cột NULL NULL được tạo, nó sẽ hoạt động giống như cột char không NULL: các giá trị là phù hợp với kích cỡ của cột. Nếu ANSI_PADDING được tắt khi cột NULL NULL được tạo, nó sẽ hoạt động như một cột varchar với ANSI_PADDING đặt ra: dấu cách trống bị cắt cụt.

Giải pháp

Sự cố này đã được khắc phục trong các bản Cập Nhật tích lũy sau đây cho SQL Server:

       Bản Cập Nhật tích lũy 2 cho SQL Server 2017

       Cập Nhật tích lũy 9 cho SQL Server 2016

       Bản Cập Nhật tích lũy 6 cho SQL Server 2016 SP1

       Cập Nhật tích lũy 8 cho SQL Server 2014 SP2

       Cập Nhật tích lũy 7 cho SQL Server 2014 SP1

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:

Bản Cập Nhật tích lũy mới nhất cho SQL Server 2017

Bản Cập Nhật tích lũy mới nhất cho SQL Server 2016

Bản Cập Nhật tích lũy mới nhất cho SQL Server 2014

Trạng thái

Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm Microsoft được liệt kê trong phần "áp dụng cho"

Tham khảo

Tìm hiểu về thuật ngữmà Microsoft sử dụng để mô tả các bản cập nhật phần mềm.

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.