ASP con llamada a proc. Almacenado en SQLServer
Página ASP con objeto Command que llama a un procedimiento almacenado del SQLServer.
Dicho procedimiento puede ser algo tan sencillo como:
create procedure miproc @uno int, @dos char(30) output
As
Begin
insert into tabla
values (@uno)
if (@@error <>0)
begin
return -1
set @dos = 'Error al insertar'
end
set @dos = 'Todo bien'
end
Creo la página y llamo al procedimiento. Si todo va bien no hay problema, pero si el insert falla (por clave duplicada, por ejemplo), la página ASP deja de ejecutarse y muestra el error del gestor SQLServer (501 creo)
Si en la página Web pongo antes de la ejecución del proc. Almacenado
on error resume next
Sigue la ejecución, pero no devuelve nada y no puede capturar ni el valor de retorno ni la variable por referencia (output).
¿Cómo puedo solucionarlo?
Lo mejor es que en ORACLE funciona perfectamente, ya que me permite capturar los errores del gestor y mandar mis propios errores.
Dicho procedimiento puede ser algo tan sencillo como:
create procedure miproc @uno int, @dos char(30) output
As
Begin
insert into tabla
values (@uno)
if (@@error <>0)
begin
return -1
set @dos = 'Error al insertar'
end
set @dos = 'Todo bien'
end
Creo la página y llamo al procedimiento. Si todo va bien no hay problema, pero si el insert falla (por clave duplicada, por ejemplo), la página ASP deja de ejecutarse y muestra el error del gestor SQLServer (501 creo)
Si en la página Web pongo antes de la ejecución del proc. Almacenado
on error resume next
Sigue la ejecución, pero no devuelve nada y no puede capturar ni el valor de retorno ni la variable por referencia (output).
¿Cómo puedo solucionarlo?
Lo mejor es que en ORACLE funciona perfectamente, ya que me permite capturar los errores del gestor y mandar mis propios errores.
1 Respuesta
Respuesta de lamer
1