Salvataggio file con bcp su macchina diversa dal Server SQL

lunedì 19 dicembre 2016 - 14.59

gianp Profilo | Junior Member

Salve a tutti,
ho creato una Stored Procedure su SQL Server 2014 con la quale, tramite l'uso del comando bcp, riesco a scaricare su un percorso che passo come parametro un file blob contenuto in un campo di una tabella. Il percorso di salvataggio risiede sul server dov'è installato il motore di SQL Server. La sintassi è la seguente:

EXEC master..xp_cmdshell 'bcp "SELECT <nomecampo> FROM <nometabella>" queryout "path\nomefile" -S <nomeserver> -T -c'

Vorrei poter fare la stessa cosa ma salvando il file su un percorso che risiede su una macchina differente rispetto a quella dov'è installato SQL Server engine, è possibile farlo sempre tramite bcp magari indicando in un parametro il nome della macchina a cui inviare il file? Se non fosse possibile farlo con bcp, qualcuno saprebbe indicarmi su quale altra funzionalità mi dovrei indirizzare?
Grazie.
Gianp.


Ho risolto: l'obiettivo si raggiunge creando una cartella condivisa sulla macchina dove si vuole salvare il file e puntando tale cartella nella path del comando, ossia:

EXEC master..xp_cmdshell 'bcp "SELECT <nomecampo> FROM <nometabella>" queryout "cartella_condivisa\nomefile" -S <nomeserver> -T -c'

la cartella condivisa va mappata in Sql Server come segue:

exec xp_cmdshell 'net use p:\ \\Server\Folder\Folder\Folder\ /Domain\Login /Password'

per maggiori informazioni vedere il post: http://social.msdn.microsoft.com/Forums/sqlserver/en-US/6eca2d62-eb86-4f23-9b86-6f917017f50c/bcp-utility-via-xpcmdshell-and-network-drive?forum=sqlsecurity

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5