KB2954861 — POPRAWKA: komunikat "Query Timeout Expired" (Wygasł limit czasu kwerendy) podczas wyświetlania podglądu polecenia pakietu SSIS w narzędziu SSDT

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

Objawy

Rozważmy następujący scenariusz:

  • Pakiet usług SQL Server Integration Services (SSIS) można zaprojektować za pomocą programu Microsoft SQL Server 2012 lub SQL Server 2014 i narzędzi Microsoft SQL Server Data Tools (SSDT).
  • W zadaniu przepływu danych należy użyć składnika źródłowego, takiego jak źródło bazy danych OLE, źródło ADO.NET lub źródło ODBC, aby ustawić tryb dostępu do danych na polecenie SQL, a następnie wpisać zapytanie w polu polecenia.
  • Kliknij pozycję Podgląd, aby wyświetlić wynik zapytania.

W tym scenariuszu polecenie, którego podgląd jest wyświetlany, działa dłużej niż 30 sekund i kończy się niepowodzeniem w projektancie. Ponadto zwracany jest błąd podobny do komunikatu "Limit czasu zapytania wygasł".

Przyczyna

Ten problem występuje, ponieważ próg CommandTimeout jest ustalony jako 30 sekund dla funkcji w wersji zapoznawczej w projektancie SSIS.

Rozwiązanie

Ten problem został po raz pierwszy rozwiązany w następującej aktualizacji zbiorczej programu SQL Server.

Zbiorcza aktualizacja 3 dla systemu SQL Server 2014 /pl-pl/pomoc/2984923

Aktualizacja skumulowana 1 dla systemu SQL Server 2012 z dodatkiem SP2 /pl-pl/pomoc/2976982

Skumulowana aktualizacja 10 dla SQL Server 2012 z dodatkiem Service Pack 1 /en-us/help/2954099

Informacje o aktualizacjach zbiorczych dla programu SQL Server

Każda nowa aktualizacja zbiorcza programu SQL Server zawiera wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji skumulowanej. Sprawdź najnowsze aktualizacje zbiorcze dla programu SQL Server:

      

        
Uwagi:

  • Przed zastosowaniem tej poprawki ustawienia limitu czasu zostają ustalone na 30 sekund w podglądzie danych dla wszystkich składników SSIS.

  • Po zastosowaniu tej poprawki:

    • Składnik źródłowy ADO.NET i składnik źródłowy bazy danych OLE mają już właściwość CommandTimeout. Ta właściwość będzie używana w podglądzie danych.

    • Dla wszystkich innych składników, które mają funkcję podglądu danych, ale nie mają właściwości CommandTimeout:

      • Jeśli w kluczu rejestru systemowego będzie występować wartość DWORD DataPreviewTimeout:\\HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\SSIS\Preferences, usługi SSIS będą używać tej wartości jako limitu czasu w podglądzie.
      • Jeśli nie ma wartości DWORD DataPreviewTimeout, usługi SSIS nadal używają 30 sekund.

      

Stan

Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.