Bonjour,

Je souhaite utiliser l'utilitaire bcp de SqlServer afin de déposer des fichiers sur disque.
J'ai donc créé une procedure stockée dans laquelle je construis ma chaine bcp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
SET @BCPCommand = 'bcp "' + @MonSQL +'" queryout d:\Reporting\Unload\' + @NomFichier + ' -T -C -t;' 
EXECUTE master..xp_cmdshell @BCPCommand
J'ai malheureusement ce message d'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
SQLState = 08001, NativeError = 17
Error = [Microsoft][ODBC SQL Server Driver][Shared Memory]Ce serveur SQL n'existe pas ou son accès est refusé.
SQLState = 01000, NativeError = 2
Warning = [Microsoft][ODBC SQL Server Driver][Shared Memory]ConnectionOpen (Connect()).
J'ai testé en mettant le path de bcp.exe dans ma chaine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
SET @BCPCommand = '"C:\Program Files\Microsoft Sql Server\80\Tools\Binn\bcp.exe" "' + @MonSQL +'" queryout d:\Reporting\Unload\' + @NomFichier + ' -T -C -t;' 
EXECUTE master..xp_cmdshell @BCPCommand
Ce coup-ci j'ai le message
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
'C:\Program' n'est pas reconnu en tant que commande interne
Pour info le path du serveur fait bien référence au répertoire "C:\Program Files\Microsoft Sql Server\80\Tools\Binn"

Je peux executer sans erreur via une commande dos la chaine suivante
:
"C:\Program Files\Microsoft Sql Server\80\Tools\Binn\bcp.exe"

J'avoue que je commence à m'énerver sur le sujet.

Merci d'avance pour votre aide.