Buscar este blog

martes, 2 de junio de 2009

EJECUTAR BCP COMO PROCESO DESDE VB.NET 2008

Para ejecutar BCP desde codigo en VB.NET 2008, basta con escribir el siguiente codigo:


Dim objProcess As System.Diagnostics.Process = New System.Diagnostics.Process
objProcess.EnableRaisingEvents = True
objProcess.StartInfo = New System.Diagnostics.ProcessStartInfo()
objProcess.StartInfo.UseShellExecute = False
objProcess.StartInfo.RedirectStandardOutput = True
objProcess.StartInfo.RedirectStandardError = True
objProcess.StartInfo.FileName = "bcp"
objProcess.StartInfo.Arguments = "mydatabase.dbo.mytable out c:\mybackup -S mydatabaseserver -c -t"""" -r \n -T -U sa"
objProcess.Start()
objProcess.WaitForExit()
Dim s1 As String = objProcess.StandardOutput.ReadLine()
Dim s2 As String = objProcess.StandardOutput.ReadLine()
If (s2.Substring(0, 5) = "Error") Then
archivoLog.WriteLine("ERROR " & Date.Now.ToString() & " " & s1 & " " & s2)
Return False
Else
archivoLog.WriteLine("OK " & Date.Now.ToString() & " Finalizando proceso de backup de la tabla POSCuentasXCobrarCliente.")
Return True
End If


Espero que este codigo le pueda ser de utilidad a alguien, y que no tenga que esta casi un dia buscando informacion sobre esto :D