Applies ToSQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard

症状

假设你对在 Microsoft SQL Server 2012 或 SQL Server 2014 中具有非 dbo 架构的表具有 select 权限。 从 " sys.column_store_segments " 视图查询时,列 has_nulls、 base_id、 数量级、 min_data_id、 max_data_id和 null_value 显示 null 值。注意

  • " Sys.column_store_segments " 视图使用以下函数执行安全检查:

    HAS_PERMS_BY_NAME ( securable , securable_class , permission      [ , sub-securable ] [ , sub-securable_class ] )
  • 除非用户具有 select 权限,否则列 has_nulls、 base_id、 数量级、 min_data_id、 max_data_id和 null_value 返回 null 值。

原因

出现此问题的原因是视图的安全检查不考虑非 dbo 架构。 因此,即使你对具有非 dbo 架构的表具有 select 权限,也仍然从视图中收到 NULL 值。

SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。