Symptomy
Załóżmy, że wykonywanie instrukcji tworzenia statystyk lub wykonywanie instrukcji tworzącej statystyki w tle w programie Microsoft SQL Server 2014. Gdy wartości danych mają wartość przekraczającą 15 znaczących cyfr dziesiętnych, a Dystrybucja danych nie jest dobrze rozpowszechniona, a raczej nie są w kilku cienkich zakresach, nie można utworzyć statystyk i nie ma komunikatu o błędzie.
Rozwiązanie
Ten problem został po raz pierwszy rozwiązany w poniższej zbiorczej aktualizacji programu SQL Server.
Zbiorcza aktualizacja 1 dla programu SQL Server 2014 z dodatkiem SP1 /en-us/help/3067839
Zbiorcza aktualizacja 8 dla programu SQL Server 2014 /en-us/help/3067836
Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:
Więcej informacji
Możesz użyć poniższego kodu, aby odtworzyć ten problem na serwerze zawierającym więcej niż cztery rdzenie:
use mastergodrop database <DataBase Name>gocreate database <DataBase Name>goALTER DATABASE <DataBase Name> SET AUTO_UPDATE_STATISTICS OFFgouse <DataBase Name>;gocreate table <Table Name>( id decimal(19,0) NULL)godeclare @i int = 0DECLARE @NewRows AS table (id decimal(19,0))insert into @NewRows values(1234567890123456789)while @i < 12 begin insert into @NewRows select * from @NewRows set @i = @i + 1endinsert into <Table Name> select * from @NewRowsgodeclare @i int = 0DECLARE @NewRows AS table (id decimal(19,0))insert into @NewRows values(1234567890123457691)while @i < 16 begin insert into @NewRows select * from @NewRows set @i = @i + 1endinsert into <Table Name> select * from @NewRowsgodeclare @i int = 0DECLARE @NewRows AS table (id decimal(19,0))insert into @NewRows values(1234567890123457692)while @i < 12 begin insert into @NewRows select * from @NewRows set @i = @i + 1endinsert into <Table Name> select * from @NewRowsgocreate statistics stat on <Table Name> ([id])gouse mastergodrop database <DataBase Name>go
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".