Симптоми
Приемете, че имате разрешение за избиране в таблицата, която има неdboа схема в Microsoft SQL Server 2012 или SQL Server 2014. Когато задавате заявка от изгледа sys.column_store_segments , колоната has_nulls, base_id, магнитуд, min_data_id, max_data_idи null_value показва нулева стойност.Забележка
-
Изгледът sys.column_store_segments извършва проверката за защита с помощта на функцията по-долу:
HAS_PERMS_BY_NAME ( securable , securable_class , permission [ , sub-securable ] [ , sub-securable_class ] )
-
Колоната has_nulls, base_id, магнитуд, Min_data_id, max_data_idи null_value връща стойност NULL , освен ако потребителят няма разрешение за избиране.
Причина
Проблемът възниква, тъй като проверката за защита на изгледа не разглежда DBO схема. Ето защо, въпреки че имате разрешение за избиране в таблицата със схема, която не е DBO, все още получавате стойност NULL от изгледа.
Решение
Проблемът е коригиран първо в следващата сборна актуализация на SQL Server.
Кумулативна актуализация 2 за SQL Server 2012 SP2 /en-us/help/2983175
Кумулативна актуализация 12 за SQL Server 2012 SP1 /en-us/help/2991533
Кумулативна актуализация 3 за SQL Server 2014 /en-us/help/2984923
Всяка нова сборна актуализация за SQL Server съдържа всички поправки и всички корекции на защитата, които са били включени в предишната сборна актуализация. Вижте последните сборни актуализации за SQL Server:
Състоянието
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".