KB2989704 – LØSNING: Noen kolonner i sys.column_store_segments visning viser NULL-verdi når tabellen har ikke-DBO-skjema i SQL Server

Gjelder for
SQL 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

Symptomer

Anta at du har utvalgstillatelse i tabellen som har ikke-DBO-skjema i Microsoft SQL Server 2012 eller SQL Server 2014. Når du spør fra sys.column_store_segments-visningen, viser kolonnen has_nulls, base_id, størrelse, min_data_id, max_data_id og null_value NULL-verdi.

Obs!

  • Den sys.column_store_segments visningen utfører sikkerhetskontrollen ved hjelp av følgende funksjon:

    HAS_PERMS_BY_NAME ( securable , securable_class , permission  
        [ , sub-securable ] [ , sub-securable_class ] )
    
  • Kolonnene has_nulls, base_id, størrelse, min_data_id, max_data_id og null_value returnerer NULL-verdi, med mindre brukeren har valgt-tillatelse.

Årsak

Dette problemet oppstår fordi sikkerhetskontrollen av visningen ikke vurderer ikke-DBO-skjemaet. Selv om du har utvalgstillatelse i tabellen med ikke-DBO-skjema, mottar du derfor fremdeles NULL-verdien fra visningen.

Oppløsning

Problemet ble først løst i den følgende kumulative oppdateringen av SQL Server.

Kumulativ oppdatering 2 for SQL Server 2012 SP2 /en-us/help/2983175

Kumulativ oppdatering 12 for SQL Server 2012 SP1 /en-us/help/2991533

Kumulativ oppdatering 3 for SQL Server 2014 /en-us/help/2984923

Om kumulative oppdateringer for SQL Server

Hver nye kumulative oppdatering for SQL Server inneholder alle hurtigreparasjoner og alle sikkerhetsrettinger som fulgte med den forrige kumulative oppdateringen. Ta en titt på de nyeste kumulative oppdateringene for SQL Server:

      

Status

Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen «Gjelder for».