SQL Server – Executar DTS via código

Uma dúvida muito comum:

Como executar um pacote DTS via código?

Muito simples… podemos a partir do DOS digitar o seguinte comando:

dtsrun /S nome_servidor /E /N nome_do_pacote

 

O pacote será executado.

Aí me perguntam: Ah, mas eu quero executar a partir do SQL Server!

Ok, existe a opção de utilizar a procedure xp_cmdshell para executar o mesmo comando. Ficaria mais ou menos assim:

EXEC master..xp_cmdshell ‘dtsrun /S nome_servidor /E /N nome_do_pacote’

Porém é bom deixar um alerta: Essa procedure só pode ser executada por sysadmins, e no SQL Server 2005 ela vem desabilitada, (se você quiser utilizá-la deverá realizar isso na SQL Server Surface Area). Isso tudo por razões de segurança, afinal ela tem o poder de executar comandos no sistema operacional… tire suas próprias conclusões sobre isso e pense se é viável habilitá-la em seu ambiente.

Pra finalizar, segue abaixo alguns parâmetros que podem ser interessantes na utilização do comando dtsrun:

  • Executar comando utilizando login do Windows:
    /E  (Conexão confiável)
  • Executar comando utilizando login do SQL:
    /U login /P senha
  • Se o pacote tiver uma senha:
    /M senha

Para ter acesso a uma relação completa digite apenas dtsrun no prompt do DOS e Enter ou acesse este link: http://msdn.microsoft.com/en-us/library/aa224467(SQL.80).aspx.

Até +

No comments yet

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: