O que é procedimento no SQL

Os desenvolvedores podem aproveitar o poder do SQL com instruções procedurais incorporadas ao Pl / SQL, pois o Pl / SQL é uma linguagem estruturada em bloco. Um procedimento armazenado nada mais é do que uma coleção de instruções SQL declarativas. Podemos pensar em um procedimento como uma função ou um método. Disparadores, outros procedimentos ou aplicativos em Java, PHP etc. podem ser utilizados para chamar um procedimento. As instruções de bloco são passadas para o mecanismo Oracle de uma só vez, para que possamos ter a velocidade de processamento alta e diminuir o tráfego.

Um procedimento armazenado é como um bloco de código que podemos salvar e reutilizar repetidamente. Se tivermos uma consulta SQL que estamos usando várias vezes, em vez de reescrevê-la novamente, podemos salvá-la como um procedimento armazenado e, em seguida, basta chamá-la e executá-la. Também podemos passar os parâmetros para um procedimento armazenado, para que possamos ter uma saída com base no valor ou nos valores passados.

O que é SQL?

A linguagem de consulta estruturada (SQL) às vezes é pronunciada como o caractere individual "S-QL" ou "see-Quel". É usado para consultar, manipular ou atualizar dados no banco de dados relacional. É usado para inserir, atualizar ou excluir registros em um banco de dados. Uma das principais funcionalidades do SQL é manter um banco de dados.

A sintaxe da consulta SQL para buscar todos os registros é a seguinte:

selecione * do nome_tabela

Procedimentos armazenados no SQL

O que é um procedimento armazenado? Um procedimento armazenado é uma coleção de instruções SQL (Structured Query Language) com um nome atribuído a ele. Esses procedimentos armazenados são armazenados em um sistema de gerenciamento de banco de dados relacional (RDBMS). Portanto, é possível várias chamadas dos procedimentos, reduzindo várias execuções e resultando em menor tempo de execução. Os dados podem ser modificados usando procedimentos e a principal vantagem é que eles não estão vinculados a um aplicativo específico.

Os procedimentos armazenados podem aceitar parâmetros como uma entrada e podem retornar vários valores como um parâmetro de saída. No SQL Server, os procedimentos armazenados executam operações no banco de dados e podem retornar um valor de status para um aplicativo ou um procedimento de chamada em lote. Os procedimentos definidos pelo usuário são criados usando o banco de dados definido pelo usuário, com a exceção quando temos um banco de dados somente leitura. Para isso, precisamos desenvolvê-lo no Transact SQL (T-SQL). Tempdb é onde todos os procedimentos temporários são armazenados. Existem dois tipos de procedimentos armazenados que temos

  1. Procedimentos locais
  2. Procedimentos globais

Os procedimentos locais são os que são visíveis apenas para o usuário que os utiliza na conexão, enquanto os procedimentos globais são visíveis para qualquer usuário na mesma conexão.

Estrutura de criação do procedimento

Aqui, owner significa o nome do banco de dados e, para passar o parâmetro, precisamos adicionar o símbolo '@'.

CREATE PROCEDURE .
AS
Execute a Stored Procedure
Exec is the command for the execution of the procedure.
EXEC Procedure_name

Comparação entre procedimento armazenado e funções

Procedimento armazenado e funções podem ser usadas para obter a mesma funcionalidade. Podemos personalizar tanto os procedimentos quanto as funções. A diferença entre elas é que as funções são projetadas para enviar sua saída para o Transact SQL e os procedimentos armazenados são projetados para retornar a saída para uma consulta e também podem retornar a saída para o T-SQL. Os aplicativos podem ter uma entrada dos procedimentos armazenados, enquanto as funções definidas pelo usuário podem retornar variáveis ​​da tabela e não têm o privilégio de alterar as configurações do ambiente nem o ambiente do sistema operacional.

Empresa de banco de dados

CompanhiaCategoriaItem
Tarlecomestíveisbiscoitos
Tarlecomestíveissalgadinhos
Lakmecosméticosbatom
PeitomerceariaSementes de linhaça
Peitocomestíveisbiscoitos
Peitomerceariaóleo
olecosméticosLixador de unha
olecosméticosEscova de cabelo

Exemplo de procedimento armazenado

A instrução SQL a seguir cria um procedimento armazenado que seleciona a empresa

CRIAR PROCEDIMENTO SelectAllExample

COMO

SELECT * FROM empresa GO;

Execute o procedimento armazenado acima da seguinte maneira:

Executando o procedimento acima armazenado, podemos usar o seguinte comando:

EXEC SelectAllExample;

Exemplo de procedimento armazenado com um parâmetro

A instrução SQL a seguir cria um procedimento armazenado com um único parâmetro a ser passado que seleciona uma empresa com um item como parâmetro

CRIAR PROCEDIMENTO SelectAllExample @item nvarchar (30)

COMO

SELECT * FROM empresa ONDE item = @item GO;

Execute o procedimento armazenado acima da seguinte maneira:

Para executar o procedimento armazenado acima com um parâmetro, podemos usar o seguinte comando: EXEC SelectAllExample item = "cookies";

Exemplo de procedimento armazenado com vários parâmetros

A instrução SQL a seguir cria um procedimento armazenado com vários parâmetros que selecionam empresa com item e categoria como parâmetro

CRIAR PROCEDIMENTO SelectAllExample @item nvarchar (30), @ categoria nvarchar (10)

AS SELECT * DA empresa ONDE item = @ item E categoria = @ categoria GO;

Execute o procedimento armazenado acima da seguinte maneira:

Para executar o procedimento armazenado acima com vários parâmetros, podemos usar o seguinte comando: precisamos passar os vários parâmetros com vírgula: EXEC SelectAllExample item = "cookies", category = "edibles";

Vantagens do procedimento em SQL

  • A melhoria do aplicativo pode ser alcançada por procedimentos. Se um procedimento for chamado várias vezes em um único aplicativo, a versão compilada do procedimento será utilizada.
  • O tráfego entre o banco de dados e o aplicativo pode ser reduzido, pois as grandes instruções já são alimentadas no banco de dados e não precisamos enviá-lo novamente.
  • Usando procedimentos, a reutilização do código pode ser alcançada, semelhante às funções e métodos que funcionam no java e em outras linguagens de programação.

Desvantagens do procedimento no SQL

  • Procedimentos armazenados consome muita memória. É dever de um administrador de banco de dados decidir um limite superior para quantos procedimentos armazenados são viáveis ​​para um aplicativo específico.
  • Procedimentos armazenados não podem ser depurados usando o MySQL.

Conclusão: O que é procedimento em SQL

  • Instruções simples não selecionadas, incluindo instruções DML, como Inserir e excluir, também instruções DDL, como Drop e Create, podem ser incluídas nos programas armazenados.
  • O consumo de memória é maior, mas a taxa de busca pode ser reduzida e a reutilização do código é benéfica.
  • Os procedimentos armazenados podem ser implementados com ou sem variáveis ​​e podem ser executados passando os parâmetros, se necessário.

Artigos recomendados

Este foi um guia para o que é procedimento no SQL. Aqui discutimos a estrutura, exemplos, vantagens e desvantagens do procedimento em SQL. Você também pode consultar os seguintes artigos para saber mais -

  1. O que é o SQL Server?
  2. O que é o banco de dados MySQL
  3. MySQL OpenSource
  4. O que é SQL