Symptomy
Rozpatrzmy następujący scenariusz:
-
Do projektowania pakietu usług SQL Server Integration Services (SSIS) służy program Microsoft SQL Server 2012 lub SQL Server 2014 oraz narzędzia danych programu Microsoft SQL Server (SSDT).
-
W zadaniu umożliwia można użyć składnika źródłowego, takiego jak Źródło OLE DB, Ź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.
-
Aby wyświetlić wynik kwerendy, kliknij pozycję Podgląd .
W tym scenariuszu wyświetlane jest polecenie z podglądem dłuższym niż 30 sekund, które nie działa w projektancie. Ponadto jest wyświetlany błąd podobny do "Upłynął limit czasu zapytania".
Przyczyna
Ten problem występuje, ponieważ próg CommandTimeout jest zakodowany jako 30 sekund dla funkcji Podgląd w programie SSIS Designer.
Rozwiązanie
Ten problem został po raz pierwszy rozwiązany w poniższej zbiorczej aktualizacji programu SQL Server.
Zbiorcza aktualizacja 3 dla programu SQL Server 2014 /en-us/help/2984923
Zbiorcza aktualizacja 1 dla programu SQL Server 2012 z dodatkiem SP2 /en-us/help/2976982
Zbiorcza aktualizacja 10 dla programu SQL Server 2012 z dodatkiem SP1 /en-us/help/2954099
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:
Uwagi:
-
Przed zastosowaniem tej poprawki limit czasu zostanie ustalony na 30 sekund w podglądzie danych dla wszystkich składników SSIS.
-
Po zastosowaniu tej poprawki:
-
W przypadku składnika źródłowego ADO.NET oraz składnika OLE DB Source mają już właściwości CommandTimeout. Ta właściwość będzie używana w podglądzie danych.
-
Wszystkie inne składniki, które mają funkcję Podgląd danych, ale nie mają właściwości CommandTimeout :
-
Jeśli w kluczu rejestru systemowego jest wartość DWORD DataPreviewTimeout :\\HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\SSIS\Preferences Program SSIS użyje tej wartości jako limitu czasu w wersji Preview.
-
Jeśli nie ma wartości DWORD DataPreviewTimeout, program SSIS nadal używa 30 sekund.
-
-
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".