Desempenho de aplicação com Stored Procedures
Bom dia pessoal,
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:
Agradeço pela ajuda!
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
Curtidas 0
Melhor post
Fernanda Acacia
20/01/2015
Boa tarde, Educs,
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]
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]
GOSTEI 1
Mais Respostas
Isaac Jose
20/01/2015
Boa tarde Educs Voce esta colocando um cpf que é campo numerico unico e de comparação como texto. esses campos tem que ter atribuições numericas para ganhar em desempenho. altere o mesmo e tera um ganho exorbitante. outro ponto e se a tabela ou tabelas que sao utilizadas possuem indices se nao os coloque tera outro ganho muito significativo..
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
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
GOSTEI 0
Marisiana Battistella
20/01/2015
Bom dia pessoal,
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?
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.
GOSTEI 0
Carlos Santos
20/01/2015
Obrigado a todos pelos esclarecimentos, criei uma visão melhor em relação a dúvida que estava tendo.
GOSTEI 0
Fernanda Acacia
20/01/2015
De nada educs!!! espero ter realmente contribuido com o link.
GOSTEI 1
Marisiana Battistella
20/01/2015
Por nada! =)
GOSTEI 0