Raiserror

15/04/2004 - 19:56 por Carlos | Informe spam
Hola a todos,
mi consulta es la siguiente, tengo un Store sencillo, cuyo
proposito es borrar un registro de una tabla y de ocurrir
un error deshacer la transacción y mandarme un
mensaje "entendible" por el usuario final. Desde mi
aplicación (vb6) ejecuto el Store y cuando ocurre un error
no solo me envia mi mensaje sino que también me envia el
mensaje pre definido por el SQL, como puedo hacer para que
al ocurrir el error sólo me envie mi mensaje.
Gracias de antemano.

P.D.
este es mi Store

CREATE PROCEDURE TIPOSD_BorraUno
@Tipo_CodTabla as char(3),
@Tipo_CodTipo as char(3)
AS
Begin Transaction
delete Tipo where Tipo_CodTabla=@Tipo_CodTabla and
Tipo_CodTipo=@Tipo_CodTipo
if @@error>0 or @@rowcount=0
begin
rollback
raiserror('mi error',16,1)
end
else
commit
GO
 

Leer las respuestas

#1 Javier Loria
15/04/2004 - 20:06 | Informe spam
Hola Carlos:
En VB 6.0 y asumiendo que usas ADO, en la el objeto conexion tienes una
colleccion de errores (Errors), busca en la colleccion tu error.
No es posible eliminar el mensaje original de SQL, vienen siempre en
conjunto, puedes "olvidarte" de el en el cliente, pero igual lo recibes.
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Carlos escribio:
Hola a todos,
mi consulta es la siguiente, tengo un Store sencillo, cuyo
proposito es borrar un registro de una tabla y de ocurrir
un error deshacer la transacción y mandarme un
mensaje "entendible" por el usuario final. Desde mi
aplicación (vb6) ejecuto el Store y cuando ocurre un error
no solo me envia mi mensaje sino que también me envia el
mensaje pre definido por el SQL, como puedo hacer para que
al ocurrir el error sólo me envie mi mensaje.
Gracias de antemano.

P.D.
este es mi Store

CREATE PROCEDURE TIPOSD_BorraUno
@Tipo_CodTabla as char(3),
@Tipo_CodTipo as char(3)
AS
Begin Transaction
delete Tipo where Tipo_CodTabla=@Tipo_CodTabla and
Tipo_CodTipo=@Tipo_CodTipo
if @@error>0 or @@rowcount=0
begin
rollback
raiserror('mi error',16,1)
end
else
commit
GO

Preguntas similares