Transação e Tratamento de Excepção em story procedure
22/02/2014
0
1 - É possivel usarmos Transação e Tratamento de Excepção (try e catch) em story procedure em sql e usar também Tratamento de Excepção em C# ou tenho uma aplicação C# conectada ao banco de dados sql server 2012 posso nos dois quer no C# e sql server 2012 usar Tratamento de Excepção (try e catch) ?
2 - Avalié essa story procedure se há de anormal (algo errado - sua lógica e sintaxe).
-- procedimento para cadastrar livros na base de dados
CREATE PROCEDURE SP_IserirLivro
(
@TituloLivro VARCHAR(100),
@ISBNLivro VARCHAR(30),
@AnoEdicaoLivro DATE
)
AS
BEGIN
BEGIN TRY
BEGIN TRAN
INSERT INTO Tb_Livro
(
TituloLivro,
ISBNLivro,
AnoEdicaoLivro
)
VALUES
(
@TituloLivro,
@ISBNLivro,
@AnoEdicaoLivro
);
COMMIT TRAN
END TRY
BEGIN CATCH
RAISERROR('Insira correctamente os dado', 14, 1)
ROLLBACK TRAN
SELECT ERROR_MESSAGE() AS RETORNO
END CATCH
END
3 - O padrão do RAISERROR é só 14,1 ou depende da quantidade de erro a exibir?
2 - Avalié essa story procedure se há de anormal (algo errado - sua lógica e sintaxe).
-- procedimento para cadastrar livros na base de dados
CREATE PROCEDURE SP_IserirLivro
(
@TituloLivro VARCHAR(100),
@ISBNLivro VARCHAR(30),
@AnoEdicaoLivro DATE
)
AS
BEGIN
BEGIN TRY
BEGIN TRAN
INSERT INTO Tb_Livro
(
TituloLivro,
ISBNLivro,
AnoEdicaoLivro
)
VALUES
(
@TituloLivro,
@ISBNLivro,
@AnoEdicaoLivro
);
COMMIT TRAN
END TRY
BEGIN CATCH
RAISERROR('Insira correctamente os dado', 14, 1)
ROLLBACK TRAN
SELECT ERROR_MESSAGE() AS RETORNO
END CATCH
END
3 - O padrão do RAISERROR é só 14,1 ou depende da quantidade de erro a exibir?
Anacleto Linux
Curtir tópico
+ 0
Responder
Posts
27/02/2014
Jefferson Santos
14, 1 não é a quantidade do erro.
14, indica Gravidade.
1 - Estado.
Também não é um valor padrão, podem haver outros.
14, indica Gravidade.
1 - Estado.
Também não é um valor padrão, podem haver outros.
Responder
Clique aqui para fazer login e interagir na Comunidade :)