USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Retorno de erro de uma procedure
Braga
RECIFE
PE - BRASIL
Postada em 08/03/2005 17:15 hs            
Estou usando o banco sql service 2000. Gostaria de saber com eu posso retorna um erro do próprio banco para aminha aplicação.
Ex: Tenho uma stored procedure que dentro dela tem um insert into.
Como fazer para saber se esse inserto into falhou, dando um retorno para a minha aplicação. Se possível mearrume um exemplo se não for incomodo.
Valeu galera!
     
Martini
Pontos: 2843 Pontos: 2843
PAROBÉ
RS - BRASIL
Postada em 09/03/2005 08:21 hs         
tenta algo assim:
 
CREATE PROCEDURE SampleProcedure @ParametroEntrada INT
AS

DECLARE @ErrorSave INT
SET @ErrorSave = 0
INSERT INTO Tabela
  (
   Campo1,
   Campo2
  )
 Values
  (
   Valor1,
   Valor2
  )
IF (@@ERROR <> 0)
   SET @ErrorSave = @@ERROR
RETURN @ErrorSave
GO
 
 
 
 
exemplo da ajuda do SQL Server:
USE Northwind
GO
-- Create a procedure that takes one input parameter
-- and returns one output parameter and a return code.
CREATE PROCEDURE SampleProcedure @EmployeeIDParm INT,
         @MaxQuantity INT OUTPUT
AS
-- Declare and initialize a variable to hold @@ERROR.
DECLARE @ErrorSave INT
SET @ErrorSave = 0
-- Do a SELECT using the input parameter.
SELECT MinName, MaxName, Title
FROM Employees
WHERE EmployeeID = @EmployeeIDParm
-- Save any nonzero @@ERROR value.
IF (@@ERROR <> 0)
   SET @ErrorSave = @@ERROR
-- Set a value in the output parameter.
SELECT @MaxQuantity = MAX(Quantity)
FROM [Order Details]
IF (@@ERROR <> 0)
   SET @ErrorSave = @@ERROR
-- Returns 0 if neither SELECT statement had
-- an error, otherwise returns the Max error.
RETURN @ErrorSave
GO
A Transact-SQL batch or stored procedure that executes a stored procedure can retrieve the return code into an integer variable:
DECLARE @ReturnStatus INT
DECLARE @MaxQtyVariable INT
EXECUTE @ReturnStatus = SampleProcedure @EmployeeIDParm = 9,
         @MaxQtyVariable = @MaxQuantity OUTPUT
-- Show the values returned.
PRINT ' '
PRINT 'Return code = ' + CAST(@ReturnStatus AS CHAR(10))
PRINT 'Maximum Quantity = ' + CAST(@MaxQtyVariable AS CHAR(10))
GO
 
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página