Dodałem zadanie skryptowe do projektu SSIS w VS2015. Po wdrożeniu do SQL Server 2016 dostałem komunikat o błędzie, że version 15.0
skrypt nie jest obsługiwany.
Gdzie to się dzieje version 15 come from
? Czytając inne, podobne pytania na temat Przepełnienia stosu, widzę, że możesz ustawić docelową wersję projektu na SQL Server 2012 - co zrobiłem (docelowym celem wdrożenia jest SQL Server 2012).
Próbowałem także usunąć i ponownie utworzyć zadanie skryptu. I w informacjach o skrypcie mówi, że używa V10 z C #.
Jak mogę to rozwiązać?
Zadanie skryptu: Błąd: Wystąpił wyjątek podczas ładowania Zadania skryptu z pliku XML: System. Wyjątek: Zadanie skryptu „ST_a1ad9dc5972c42b68c12a13155f10b6d” ”używa skryptu w wersji 15.0, który nie jest obsługiwany w tej wersji usług integracji. Aby uruchomić pakiet, użyj Script Task, aby utworzyć nowy skrypt VSTA. W większości przypadków skrypty są konwertowane automatycznie w celu użycia obsługiwanej wersji po otwarciu pakietu SQL Server Integration Services w% SQL_PRODUCT_SHORT_NAME% Integration Services. w Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTask.LoadFromXML (XmlElement elemProj, zdarzenia IDTSInfoEvents) ”
Otworzyłem również projekt w SSDT 2012 i przebudowałem pod inną nazwą. Ten sam błąd. Wygląda na to, że musi istnieć odniesienie, które nie zostało usunięte lub coś takiego.
Żadne z rozwiązań tego pytania ( /programming/34893267/ssis-script-task-vs15-not-work-when-deploy-on-sql-server-2014 ) nie działało.
Patrząc na XML w pakiecie, w którym znajduje się skrypt, mogę łatwo znaleźć to zadanie i nigdzie nie ma odniesienia do wersji 15.
=========== EDYCJA
Po skopiowaniu projektu na maszynę, na której znajduje się baza danych, otwarcie VS2015 i wdrożenie z tego miejsca pakiet jest wykonywany.
A potem, gdy wracam do mojej maszyny i tam buduję, nie robi tego.
Czy to błąd? Czy też robię coś głupiego, oczekując, że kompilacja wygeneruje taki sam kreator wdrażania, jak przy użyciu kreatora z VS ...
Mam SQL Server 2016 (13.0.4411.0), ssisdb
ma wersję schematu (13.0.1601.5).
Korzystam z pakietu usług integracji utworzonego w Visual Studio 2015. Ścieżka do komponentu skryptu: C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn\VSTA14_IS_ST_CS_Template.vstax
Nie pozwala mi na wykonanie pakietu za pośrednictwem katalogu usług integracji (z powodu komunikatu napotkanego przez Zacha). Wygląda jednak na to, że pozwoli mi to wykonać przez system plików (za pomocą agenta SQL). Nie wiem, czy to działa, zaktualizuje to po zakończeniu pakietu.
Odpowiedzi:
Wydaje mi się, że mam ten sam problem, a oto obejście mojego problemu.
Najpierw szczegóły:
Jeśli wdrożę do katalogu za pośrednictwem SSMS, nie pozwoli mi to wykonać pakietu za pośrednictwem katalogu usług integracji (z powodu komunikatu napotkanego przez Zacha - wersja 15.0 nie jest obsługiwana).
Obejście:
Jeśli wdrożę pakiet za pośrednictwem programu Visual Studio do „Katalogu usług integracji” w wymaganej instancji, ten komunikat zniknie i projekt zostanie pomyślnie uruchomiony. Nie jest to idealne, ponieważ powinniśmy być w stanie wdrożyć za pośrednictwem SSMS, ale oznaczało, że projekt może się rozwijać.
źródło
Mój DBA w końcu to dla mnie wymyślił i problem polegał na tym, że wdrażałem za pośrednictwem SSMS 2017, nie zdając sobie z tego sprawy. Komunikat o błędzie doprowadził mnie na manowce, ale twoje obejście pomogło mi znaleźć uzasadnienie niepowodzenia. Myślę, że możesz wypróbować SSMS 2016 i sprawdzić, czy to działa. Innym sposobem sugerowanym przez moją DBA jest użycie wiersza poleceń. Coś w tym stylu, z wyróżnieniem 130, ponieważ jest to wersja, której potrzebujesz na 2016 r .:
Mam nadzieję, że to pomoże to wyjaśnić. Pracowałem nad tym przez długi, długi czas, zanim znalazłem twoje obejście, a następnie w końcu znalazłem to rozwiązanie. Więc dziękuję!
źródło
Podobnie do innych, pierwotnie wdrożyłem SQL2014 przy użyciu kreatora wdrażania SQL2017. To spowodowało błąd środowiska wykonawczego. Kiedy korzystałem z kreatora wdrażania SQL2014, wszystko działało dobrze.
źródło
Myślałem, że dodam do tego, ponieważ otrzymywałem ten sam błąd. Korzystam z VS 2017 i wdrażam na SQL Server 2016. Przeczytałem sporo artykułów, a potem zdałem sobie sprawę, jak łatwo było mi to naprawić. VS 2017 ma doskonałą kompatybilność wsteczną.
Ten artykuł na temat zmiany wersji pakietu SSIS w celu dopasowania do wersji serwera docelowego pomógł mi rozwiązać błąd w moim przypadku.
źródło