Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Dlaczego moje połączenie ODBC kończy się niepowodzeniem podczas uruchamiania ładowania SSIS w programie Visual Studio, ale nie podczas uruchamiania tego samego pakietu przy użyciu narzędzia Wykonaj pakiet

Robię tu pewne założenia, ale zamierzam założyć, że jest to problem 32 vs 64 bity. Aby zweryfikować, wypróbuj te dwa polecenia z wiersza poleceń (klawisz Windows, R, cmd.exe lub Start, uruchom, cmd.exe)

"C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\dtexec.exe" /file C:\myPackage.dtsx
"C:\Program Files\Microsoft SQL Server\110\DTS\Binn\dtexec.exe" /file C:\myPackage.dtsx

Pierwszy uruchomi pakiet w trybie 32-bitowym, podczas gdy drugi uruchomi go w trybie 64-bitowym. Będzie to miało znaczenie, ponieważ Twoje sterowniki i wszelkie utworzone przez Ciebie DSN będą widoczne tylko w świecie 32/64-bitowym.

Naprawianie SSDT

Po zidentyfikowaniu potrzebnej wersji, prawdopodobnie wersji 32-bitowej, musisz upewnić się, że Twój projekt korzysta z odpowiedniego środowiska uruchomieniowego. Kliknij prawym przyciskiem myszy swój projekt i wybierz Właściwości, a następnie przejdź do zakładki Debugowanie we Właściwościach konfiguracji.

Po odwróceniu wartości Run64BitRuntime zakładam, że twój pakiet będzie działał z poziomu SSDT.

Naprawianie agenta SQL

Będziesz musiał edytować istniejące zadanie SQL Agent, aby zmienić bitbitowość kroku zadania. Będzie to na karcie Konfiguracja, a następnie na karcie Zaawansowane. Zaznacz/odznacz 32-bitowe środowisko wykonawcze.

Kłamstwa i oszustwa

Spostrzegawczy ludzie mogą zobaczyć, że dtexec oferuje /X86 opcja. Nie wierz w to. Jedynym sposobem na uzyskanie poprawnej bitowości jest jawne wywołanie poprawnego dtexec.exe Dokumentacja nawet tak mówi, ale nikt nie czyta dokumentacji.

Ta opcja jest używana tylko przez agenta SQL Server. Ta opcja jest ignorowana, jeśli uruchomisz narzędzie dtexec w wierszu poleceń.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przechowywanie obrazów w SQL Server?

  2. Jak zamienić wiele znaków w SQL?

  3. Usuń SCHEMABINDING z widoku w SQL Server

  4. Dziennik transakcji SQL Server — część 1

  5. Czy powinienem używać reguły CASCADE DELETE?