Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

O que é o Stored Procedure e por que Stored Procedure?


Oi,

Neste artigo falarei sobre o Stored Procedure que deve ser utilizado em grandes projetos.

Acho que definitivamente deve ser usado em projetos de grande porte, pois a diferença de Stored procedures só ocorre em projetos que exigem desempenho e eficiência em grande escala.









Stored procedure em geral, podemos descrever da seguinte forma:Instruções SQL que não são necessárias para compilar após a primeira compilação e são mantidas no servidor de banco de dados. Por outro lado, podemos dizer instruções T-SQL armazenadas no servidor de banco de dados em vez da camada de aplicativo.

Os procedimentos armazenados, como em outras linguagens de programação, podem ser executados sem parâmetros. Também é chamado de SP quando usado no desenvolvimento de aplicativos. Todas as operações de banco de dados podem ser feitas com procedimentos armazenados.



Um dos recursos mais bonitos do uso de procedimentos armazenados talvez seja separar os códigos da linguagem de programação das consultas de banco de dados DML (Database Manipulation Language). Além disso, uma vez que você tenha escrito e compilado um SP, você pode usá-lo muitas vezes.

Em geral, vou expor as vantagens dos procedimentos armazenados e por que eles são muito usados ​​a seguir.


  • Os Stored Procedures são muito rápidos porque são mantidos no servidor de banco de dados, o motivo é que eles não precisam compilar mais uma vez depois de compilar uma vez sozinho. No entanto, o código SQL que você enviou na camada de Aplicativo deve ser compilado repetidamente a cada transação. Isso é uma grande perda de tempo para projetos e servidores de grande escala que atendem a mais de um cliente.
  • Oferece excelente economia no tráfego de rede.
  • Ele fornece parametrização automática para instruções SQL. Em vez de substituir todos os parâmetros no local onde as instruções SQL passam, você só pode modificar os parâmetros ou regras dentro do SP. Isso também corrige a complexidade dos aplicativos que permitem que seu aplicativo seja modular.
  • Você pode usar comandos T-SQL além de expressões de programação (if, while, for, etc.) ao escrever procedimentos armazenados.
  • Os procedimentos armazenados são mais confiáveis ​​porque apenas os parâmetros de entrada e saída aparecem na camada de aplicação. Se pensarmos que o acesso ao servidor de banco de dados geralmente é feito com o ID do usuário e senha, podemos dizer que usar o SP é um elemento de confiança para nossos códigos.



Expliquei as vantagens dos procedimentos armazenados que me vieram à mente acima. Quase todos os aplicativos de software não usam códigos sql normais em geral.

Como eu disse acima, ser gerenciado de um único ponto e usá-lo em mais de um lugar e não poder ver outras pessoas facilmente torna os SPs muito vantajosos.



Principalmente quando pensamos em tráfego de rede, enviar muitas linhas de comandos SQL enviados pelo cliente para o servidor ao invés de enviar o nome da Stored Procedure para o servidor de uma vez significa que o tráfego de rede fica muito aliviado.





Existem quatro tipos de procedimentos armazenados.
  1. Procedimento armazenado do sistema :  eles estão no banco de dados mestre e sp_ prefix é usado para esses procedimentos armazenados. Eles são usados ​​em tarefas administrativas relacionadas ao sistema no banco de dados.
  2. Procedimento armazenado baseado no usuário: Esses procedimentos armazenados são usados ​​para nossos aplicativos. Você pode excluir ou alterar esses SP.
  3. Procedimento armazenado estendido: Geralmente, ele é compilado como .dll e um tipo de procedimento armazenado que compila a funcionalidade do Servidor de Banco de Dados. ele é adicionado apenas ao banco de dados mestre.
  4. Procedimento armazenado CLR: É um tipo de procedimento armazenado desenvolvido em ambiente CLR usando qualquer linguagem.