2010-03-01 3 views
1

Existe-t-il un moyen d'écrire directement le résultat renvoyé à partir de la procédure stockée TSQL dans un fichier texte (sans utiliser CTRL + T => Résultat dans le texte). Comme ce TSQL sera dynamique dans l'une de mes routines de service. Chaque fois que j'appelle cette routine de service, elle génère SQL Statement => exécute et ici je veux la diriger vers un fichier texte en passant le chemin de fichier en paramètre.Sortie du résultat TSQL au fichier texte dans le script

Comment cela peut-il être fait?

Merci

Répondre

1

Quelque chose comme ça fonctionnerait:

declare @cmd varchar(500) 
select @cmd = 'osql -U -P -S -Q"select * from myTable" -o"c:\output.txt" -w500' 
exec master..xp_cmdshell @cmd 

Vous pouvez également le faire en créant une procédure stockée C# et l'exécuter via le CLR.

+1

la plupart des DBA auront supprimé l'accès à 'xp_cmdshell'. Dans ce cas, l'exécution depuis l'extérieur de SQL Server (sur la ligne de commande) est votre meilleure option. –

Questions connexes