Dotyczy
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Business Intelligence SQL Server 2012 Analysis Services SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard

Symptomy

Rozpatrzmy następujący scenariusz:

  • Uruchomienie procedury w programie Microsoft SQL Server 2014 lub SQL Server 2012.

  • Procedura zawiera następujące warunki:

    • Umożliwia dołączenie do tabeli, która jest często aktualizowana.

    • Zawiera klauzulę WHERE zawierającą parametry.

    • Używa opcji (RECOMPILE).

  • Ta procedura jest uruchamiana dla wielu jednoczesnych połączeń z różnymi zestawami wartości parametrów.

  • Serwer jest w dużym obciążeniu, co powoduje, że każda z tych procedur zajmuje więcej czasu niż zwykle.

W tym scenariuszu może wystąpić niepoprawna liczba wyników procedury, która jest uruchamiana w trakcie połączenia, jeśli w przedziale czasu między zakończeniem kompilacji kwerendy i rozpoczęciem wykonywania zapytania w połączeniu są spełnione następujące dodatkowe warunki:

  • Warunek 1: inne jednoczesne połączenie udostępnia w tabeli sprzężonej aktualizacje, które są wystarczająco duże, aby wyzwolić kolejną ponowną kompilację zapytania w połączeniu.

  • Warunek 2: to samo zapytanie zostało ponownie skompilowane z innego połączenia, a następnie wprowadzone w pamięci podręcznej.

Ważne Ten problem z chronometrażem jest niezwykle rzadki.

Przyczyna

Ten problem występuje, ponieważ wartości parametrów kwerendy są zmieniane na niepoprawne wartości po uruchomieniu zapytania w połączeniu. Dzieje się tak z powodu bardzo rzadkich problemów dotyczących czasu, jakie występują między kompilacjami współbieżnymi.

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:

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.