Desempenho de aplicação com Stored Procedures
20/01/2015
0
tenho uma dúvida em relação ao desempenho da aplicação, onde eu faço todos os procedimentos de Insert, Update e Delete por Stored Procedures.
A aplicação realmente perde em desempenho, ou não tem nenhum problema?
Segue exemplo do código SQL:
ALTER PROCEDURE [dbo].[spInserirPessoaFisica] @Nome AS VARCHAR(50), @CPF AS VARCHAR(11), @RG AS VARCHAR(20), @DataNascimento AS DATE AS BEGIN --EXCEÇÃO BEGIN TRY --TRANSAÇÃO BEGIN TRAN --VERIFICA SE EXISTE UM CPF JÁ CADASTRADO. IF(EXISTS(SELECT IdPessoaFisica FROM tblPessoaFisica WHERE CPF = @CPF)) BEGIN RAISERROR('CPF já existente!', 14, 1); END DECLARE @IdPessoa AS INT; --1º PASSO: INSERIR NA TABELA tblPessoa INSERT INTO tblPessoa (IdPessoaTipo) VALUES (1); SET @IdPessoa = @@IDENTITY; --2º PASSO: INSERIR NA TABELA tblPessoaFisica INSERT INTO tblPessoaFisica (IdPessoaFisica, Nome, CPF, RG, DataNascimento) VALUES (@IdPessoa, @Nome, @CPF, @RG, @DataNascimento); SELECT @IdPessoa AS Retorno; COMMIT TRAN END TRY BEGIN CATCH ROLLBACK TRAN SELECT 'Erro: ' + ERROR_MESSAGE() AS Retorno; END CATCH END
Agradeço pela ajuda!
Carlos Santos
Post mais votado
20/01/2015
já viu esse artigo? mostra uma parte sobre stored procedure
[url]http://www.linhadecodigo.com.br/artigo/540/net-aumentando-o-desempenho-de-suas-aplicacoes.aspx[/url]
Fernanda Acacia
Mais Posts
20/01/2015
Isaac Jose
obs talvez o seu problema em si nao esteja na Sp e sim na origem .. se seus campos da tabela forem como os que esta chamando na variavel ex rg e cpf como varchar aconsenho estudar uma possivel solução de substituição se nao a orientação acima deve ajudar.
att.
Isaac
20/01/2015
Marisiana Battistella
tenho uma dúvida em relação ao desempenho da aplicação, onde eu faço todos os procedimentos de Insert, Update e Delete por Stored Procedures.
A aplicação realmente perde em desempenho, ou não tem nenhum problema?
Olá!!
É sempre melhor fazer o processamento das instruções SQL direto no banco de dados, pois assim você deixa todo o processamento mais pesado da aplicação em responsabilidade do banco e, dessa forma, tem-se um controle bem mais evoluído na parte administrativa e no controle da performance do banco.
Além de permitir que os recursos do banco sejam mais explorados pelos desenvolvedores.
A aplicação só vai perder em desempenho se as instruções SQL não estiverem otimizadas, estiverem com custo elevados,...
E estes são pontos que são identificados facilmente quando trabalhados direto no banco de dados, pois a ferramenta possui recursos para analisar a performance de cada instrução SQL criada.
21/01/2015
Carlos Santos
21/01/2015
Fernanda Acacia
Clique aqui para fazer login e interagir na Comunidade :)