Domanda

Ho creato un pacchetto SSIS per creare un file XML, che funziona perfettamente in Visual Studio, ma quando provo a eseguire il prompt cmd usando dtexec / f " C: \ OakeyCreek.dtsx " genera un errore

  

Pacchetto SSIS " TestOakey " non riuscito con il codice di uscita: 1

Nel pacchetto un sqltask fornisce un gruppo di risultati come XML e un'attività di script crea il file xml.

Ho fatto qualche ricerca, lo stesso pacchetto senza task di script funziona bene sia in studio che nel prompt cmd. Sto sospettando un problema con l'attività di script, perché ho entrambi VS2005 e VS2008 sulla stessa macchina.

Qualche idea su come risolvere questo problema?

L'errore esatto ms popup è ...

  

Le informazioni di registrazione per questa applicazione devono essere aggiornate. Per aggiornare, accedere come amministratore ed eseguire questo comando.

     

" C: \ Programmi \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ VSTA.exe " / HostID SSIS_ScriptTask / setup

Il mio sistema operativo è Vista

È stato utile?

Soluzione

Nota: modificato per fornire la risposta!

Quindi hai impostato un processo di SQL Server Agent e ora non puoi scrivere nel file system. Questo è un comportamento previsto, poiché SQL Server Agent utilizza credenziali di SQL Server per avviare il processo, non credenziali di Windows. Quindi, quello che dovrai fare è questo:

  1. Nella cartella Sicurezza nel server database in SQL Server Management Studio, trova la cartella Credenziali.
  2. Fai clic con il pulsante destro del mouse su Credenziali e fai clic su Nuova credenziale.
  3. Imposta le credenziali come te.
  4. Espandi SQL Server Agent, fai clic con il pulsante destro del mouse su Proxy e premi Nuovo proxy.
  5. Imposta il proxy come te, usando le credenziali che hai appena creato.
  6. Abilita il proxy ad avere il sottosistema SSIS (se è admin, controllali tutti).
  7. Vai a modificare il passaggio sul tuo lavoro che chiama il pacchetto SSIS.
  8. Cambia il campo Esegui come da SQL Server Agent al proxy che hai appena impostato (se l'hai fatto bene, sarà l'unica altra scelta nel menu a discesa).
  9. Dovresti essere bravo ad andare!

Saluti,
Eric

Altri suggerimenti

Stai creando il pacchetto usando SSIS 2005, ma eseguendolo usando DTEXEC da SSIS 2008 - probabilmente hai installato sia SSIS 2005 che 2008 e DTEXEC 2008 appare per primo nel percorso.

Per utilizzare DTEXEC 2005, specificare il percorso completo, ad esempio " c: \ programmi \ Microsoft Sql Server \ 90 \ dts \ binn \ dtexec.exe " / f Package.dtsx

In teoria, DTEXEC 2008 dovrebbe anche essere in grado di eseguire il pacchetto (dovrebbe aggiornarlo al volo al formato SSIS 2008), ma potrebbero esserci bug e incompatibilità tra le versioni. Inoltre, sembra che ci sia qualcosa di sbagliato nell'impostazione delle attività di script in SSIS 2008. Perché non dovresti seguire le istruzioni nel messaggio di errore: accedi come amministratore e (usando il prompt dei comandi elevato) esegui -

" C: \ Programmi \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ VSTA.exe " / HostID SSIS_ScriptTask / setup

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top