Triệu chứng
Giả định rằng bạn đã chọn cấp phép trên bảng có lược đồ không phải là trong Microsoft SQL Server 2012 hoặc SQL Server 2014. Khi bạn truy vấn từ dạng xem sys.column_store_segments , cột has_nulls, base_id, độ lớn, Min_data_id, max_data_idvà null_value Hiển thị giá trị null .Lưu ý
-
Dạng xem sys.column_store_segments thực hiện kiểm tra bảo mật bằng cách sử dụng hàm sau đây:
HAS_PERMS_BY_NAME ( securable , securable_class , permission [ , sub-securable ] [ , sub-securable_class ] )
-
Cột has_nulls, base_id, độ lớn, min_data_id, max_data_idvà null_value trả về giá trị null trừ khi người dùng đã chọn quyền.
Nguyên nhân
Sự cố xảy ra do việc kiểm tra bảo mật của dạng xem không xem xét sơ đồ không phải là dbo. Vì vậy, ngay cả khi bạn đã chọn cấp phép trên bảng có sơ đồ non-dbo, bạn vẫn nhận được giá trị null từ dạng xem.
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.
Bản Cập Nhật tích lũy 2 cho SQL Server 2012 SP2 /en-us/help/2983175
Bản Cập Nhật tích lũy 12 cho SQL Server 2012 SP1 /en-us/help/2991533
Bản Cập Nhật tích lũy 3 cho SQL Server 2014 /en-us/help/2984923
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:
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".