KB2989704 – POPRAVKA: Neke kolone u sys.column_store_segments prikazu prikazuju vrednost NULL kada tabela ima šemu koja nije DBO u SQL Server

Primenjuje se na
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

Simptomi

Pretpostavimo da imate dozvolu za izbor za tabelu koja ima ne-dbo šemu u sistemu Microsoft SQL Server 2012 ili SQL Server 2014. Kada izvršite upit iz prikaza sys.column_store_segments, kolona has_nulls, base_id, veličina, min_data_id, max_data_id i null_value prikazuje vrednost NULL.

Napomena

  • Prikaz sys.column_store_segments izvršava bezbednosnu proveru koristeći sledeću funkciju:

    HAS_PERMS_BY_NAME ( securable , securable_class , permission  
        [ , sub-securable ] [ , sub-securable_class ] )
    
  • Kolona has_nulls, base_id, magnituda, min_data_id, max_data_id i null_value daje vrednost NULL, osim ako korisnik nije izabrao dozvolu.

Uzrok

Do problema dolazi zato što bezbednosna provera prikaza ne uzima u obzir šemu koja nije dbo. Zbog toga, čak i ako imate dozvolu za izbor za tabelu koja nema dbo šemu, i dalje dobijate vrednost NULL iz prikaza.

Rešenje

Problem je prvi put rešen u sledećoj kumulativnoj ispravci sistema SQL Server.

Kumulativna ispravka 2 za SQL Server 2012 SP2 /en-us/help/2983175

Kumulativna ispravka 12 za SQL Server 2012 SP1 /en-us/help/2991533

Kumulativna ispravka 3 za SQL Server 2014 /en-us/help/2984923

Osnovni podaci o kumulativnim ispravkama za SQL Server

Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i sve bezbednosne ispravke koje su uključene u prethodnu kumulativnu ispravku. Pogledajte najnovije kumulativne ispravke za SQL Server:

      

Status

Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku „Odnosi se na“.