sexta-feira, 28 de agosto de 2009

Deve usar as melhores praticas quando estamos a elaborar Stored procedures para evitarmos problemas futuros, vamos ver 1º a sintaxe:


Create Procedure Nametheprocedure
-- Parâmetros input or output ( Variaveis )
As
BEGIN TRY
Begin Transaction
-- Comandos
commit transaction -- Se correr sem erros aplica a transacção na base de dados

END TRY

BEGIN CATCH

SELECT ERROR_NUMBER(), ERROR_MESSAGE()

Rollback -- Em caso erro não aplica a transacção

END CATCH

GO

Em baixo está um exemplo para a abase dados Adventure Works

CREATE PROCEDURE Production.AddProductReview
@ProductID int,
@ReviewerName nvarchar(50),
@EmailAddress nvarchar(50),
@Rating int,
@Comments nvarchar(3850)
as


BEGIN TRY
Begin transaction;
INSERT Production.ProductReview (ProductID, ReviewerName, EmailAddress, Rating, Comments)
VALUES (@ProductID, @ReviewerName, @EmailAddress, @Rating, @Comments)
commit transaction;
END TRY
BEGIN CATCH
SELECT ERROR_NUMBER(), ERROR_MESSAGE()
rollback transaction;
END CATCH

GO

-- Test stored procedure with error handling
EXECUTE Production.AddReview 715, 'Doug', 'doug@siteexample.com', 10, 'Great product!'
GO

Temas relacionados :

SP para copiar ficheiros

Sem comentários:

Enviar um comentário