2010-05-20 5 views
2

J'ai un package SSIS que je prévois de déployer sur ma machine SQL Server 2008.Déploiement et appel du package SSIS à partir de .NET

J'ai besoin d'appeler ce package SSIS à distance et de manière synchrone depuis .NET. Évidemment, j'ai besoin de transmettre des paramètres à ce paquet.

Comment est-ce que je pourrais faire cela?

Merci, Alex

Répondre

0

Si votre serveur SQL est dans un environnement de sécurité Vous pouvez essayer make package SSIS runnable de Stred procédure, je pense que c'est votre code peut appeler facilement la procédure stockée sur le serveur SQL. Considérant que vous devez activer xp_cmdshell (au moins comme je le sais pour SQL2005) qui est toujours mentionné comme une tâche dangereuse selon la sécurité du serveur.

3

Vous pouvez créer un travail, puis démarrer le travail à partir de SQL direct à l'aide de sp_start_job. Ce serait asynchrone.

Fonctionnant sur le serveur, il aura besoin d'avoir accès à tous les fichiers que vous pourriez être en train de lire ou écrire sur (il faudrait aussi avoir le paquet - donc si vous-génération de code un paquet à partir d'un modèle ou quelque chose , l'obtenir sur le serveur pourrait être un problème).

Vous pouvez également utiliser psexec pour exécuter un processus sur n'importe quel serveur distant. Dans ce cas, il faudrait exécuter dtexec. Cela permettrait de devoir activer xp_cmdshell. (même problème avec le besoin de voir le paquet et de voir tous les fichiers)

+0

Ceci est similaire à ce que j'ai personnellement utilisé face à cette tâche. J'ai également dû écrire un routage pour interroger si le travail est toujours en cours d'exécution - pour le rendre synchrone - il a fini par être une procédure stockée simple. J'ai essayé les deux approches sp_start_job et psexec (et le planificateur de tâches Windows avec la commande schtask) et ils fonctionnent tous en fonction de votre scénario particulier, de vos besoins et de votre infrastructure –

+0

Plus de réponses http://stackoverflow.com/questions/273751/how-to -exécuter-un-ssis-paquet-de-net/26012658 # 26012658 – Faiz

0

Une autre façon est d'écrire une application simple exposant un service Web qui permet d'exécuter des paquets - SQL Books Online a un bel exemple.

Questions connexes