Interceptar error de Bilk Insert

Hola estimado:
Necesito que realizar la carga de un archivo por bulk insert, pero necesito interceptar el error cuando el archivo venga con algún dato malo, pero no se como interceptar y enviar ese error hacia afuera y desplegarlo en la página web.
Intente con el @@error, pero no funciona por que el erro bota el sql..
aqui mi codigo..
set @Archivo_Formato='C:\Archivos_Marcadores\Marcadores.fmt'
set @archivo_cargar='C:\Archivos_Marcadores\Respuestas\' + @archivo_cargar
EXECUTE ('BULK INSERT tbl_Respuesta_Marcadores from "'+ @archivo_cargar +'"
WITH (FIRSTROW=0,
KEEPNULLS,
FIELDTERMINATOR='';'',
FORMATFILE= '''+ @Archivo_Formato + ''',
TABLOCK )')
if @@error = 0
begin
bla bla bla
end

1 respuesta

Respuesta
Y de qué servidor de base de datos estamos hablando, por ahí debe de existir un archivo log de errores, buscalo y revisa que error esta generando...
Te comento el error.log para que veas porque se detiene el servidor. Para lo que quieres hacer, el bulk insert no verifica la estructura de los datos que vas a subir, simplemente los sube, si no funcionan no los incluye, pero si existe un problema grave que no identifica, sucede lo que comentas...
Mi sugerencia sería que realices un programa con visual basic que revise los tipos de datos a integrar y los agregue o deseche y lleve un control de los datos rechazados...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas