อาการ
สมมติว่าคุณได้เลือกสิทธิ์ในตารางที่มี schema ที่ไม่ใช่ dbo ใน Microsoft SQL Server ๒๐๑๒หรือ SQL Server ๒๐๑๔ เมื่อคุณคิวรีจากมุมมองsys.column_store_segmentsคอลัมน์has_nullsbase_idขนาดmin_data_idmax_data_idและnull_valueแสดงค่าnullหมายเหตุ
-
มุมมอง sys.column_store_segments จะดำเนินการตรวจสอบความปลอดภัยโดยใช้ฟังก์ชันต่อไปนี้:
HAS_PERMS_BY_NAME ( securable , securable_class , permission [ , sub-securable ] [ , sub-securable_class ] )
-
คอลัมน์has_nullsbase_idขนาดmin_data_idmax_data_idและnull_valueจะส่งกลับค่าnullเว้นแต่ผู้ใช้ได้เลือกสิทธิ์
สาเหตุ
ปัญหานี้เกิดขึ้นเนื่องจากการตรวจสอบความปลอดภัยของมุมมองไม่พิจารณา schema ที่ไม่ใช่ dbo ดังนั้นแม้ว่าคุณได้เลือกสิทธิ์ในตารางที่มี schema ที่ไม่ใช่ dbo คุณก็จะได้รับค่า NULL จากมุมมอง
การแก้ไข
ปัญหานี้ได้รับการแก้ไขแล้วในการอัปเดตที่สะสมของ SQL Server ครั้งแรก
การอัปเดตที่สะสม2สำหรับ SQL Server ๒๐๑๒ SP2 /en-us/help/2983175
การอัปเดตที่สะสม12สำหรับ SQL Server ๒๐๑๒ SP1 /en-us/help/2991533
การอัปเดตที่สะสม3สำหรับ SQL Server ๒๐๑๔ /en-us/help/2984923
การอัปเดตที่สะสมใหม่แต่ละรายการสำหรับ SQL Server ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ในการอัปเดตที่สะสมก่อนหน้านี้ ตรวจสอบการอัปเดตที่สะสมล่าสุดสำหรับ SQL Server:
สถานะ
Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"