Zgadując, kiedy czekam na odpowiedź na komentarz, generalnie, gdy pakiet działa poprawnie w BIDS, ale nie działa z wiersza poleceń, uważam, że jest to związane z niekompatybilnością 64/32 bitów.
Czy korzystasz z programu Excel, Access lub czegokolwiek innego, co pod arkuszami korzysta ze sterownika JET? Działa to tylko w trybie 32-bitowym.
W 64-bitowym systemie operacyjnym domyślnie podczas tworzenia nowego połączenia ODBC utworzysz je w 64-bitowej przestrzeni nazw, do której wersja 32-bitowa nie będzie miała dostępu?
Czy używasz sterowników Informix lub UDB/DB2? Znalazłem tylko 32 ich wersje.
Uruchamianie pakietu z wiersza poleceń
dtexec
to mechanizm wiersza poleceń do uruchamiania pakietu SSIS. Jest dostępny w 2 wersjach dla 64-bitowego systemu operacyjnego, oba noszą nazwę dtexec
i ogólnie 32-bit jest wymieniony w zmiennej środowiskowej Ścieżka Windows
W 64-bitowym systemie operacyjnym domyślną ścieżką do 64-bitowego byłoby "c:\Program Files\Microsoft SQL Server\100\DTS\Binn\DTExec.exe"
Nadal w 64-bitowym systemie operacyjnym ścieżka do wersji 32 to "c:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe"
Aby uruchomić pakiet o nazwie FooBar.dtsx, który znajduje się w C:\Src\MyProject\MyProject, wywołanie będzie
"c:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe" /file C:\Src\MyProject\MyProject\FooBar.dtsx
Jeśli ten pakiet znajduje się na serwerze SQL Server (DEVSQL01) w folderze MyProject, byłoby to wezwanie do uruchomienia tego samego pakietu.
"c:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe" /SQL \MyProject\FooBar /SERVER DEVSQL01
Edytuj
Aby zastosować konfigurację, musisz określić /CONF
opcja
"c:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe" /file C:\Src\MyProject\MyProject\FooBar.dtsx /CONF C:\FooBar.dtsConfig
Patrząc na twoje komentarze, jedyną różnicą między naszym zastosowaniem jest to, że umieściłeś wszystko w podwójnych cudzysłowach. Wypróbuj bez poprzedzającego i końcowego cytatu.