Crie procedimentos armazenados em MySQL

Crie procedimentos armazenados em MySQL
Os procedimentos armazenados são uma lista definida pelo usuário de instruções SQL pré-compiladas que são retidas e operadas sob demanda em um banco de dados MySQL para executar um processo específico de banco de dados. Isso implica que é provável reutilizar o script de novo. Um procedimento tem um título, um conjunto de parâmetros e uma declaração de SQL (s), de modo que o procedimento armazenado possa operar com base no (s) valor (s) do parâmetro transferido. Os procedimentos armazenados devem ser executados usando a frase de chamada. Neste guia, vamos explorar pouco a pouco o processo de geração de novos procedimentos armazenados na cláusula de procedimento MySQL Create. Então vamos começar.

Crie procedimento armazenado via Workbench:

Abra o recém -instalado MySQL Workbench 8.0 e conecte -o ao banco de dados de localhost raiz.

Dentro da bancada, há uma barra de navegação. Sob esta barra de navegação, há um conjunto de funções diferentes do MySQL. Inclui uma lista de bancos de dados, tabelas, procedimentos armazenados e muito mais, como você pode ver na imagem.

Quando você explora a opção 'Tabelas', você encontrará uma lista de tabelas em uma visualização de grade. Como mostrado abaixo, temos uma tabela 'social'.

Clique com o botão direito do mouse na opção 'Procedimento armazenado' e clique na opção 'Criar procedimento armazenado', conforme mostrado na figura.

Uma nova janela será aberta, como visto na foto abaixo. Você pode alterar o nome do procedimento armazenado na área de consulta removendo o valor em vírgulas invertidas.

Agora, você pode editar esta consulta de acordo com o seu desejo. Nomeamos o procedimento armazenado como 'detalhe' enquanto obtém os dados de uma tabela 'social' onde seu valor na coluna 'site' é equivalente ao 'Instagram.'Isso significa que o procedimento de armazenamento, após a execução, mostrará apenas os registros desta tabela onde o' site 'é' Instagram.'Clique no botão Aplicar.

Você receberá uma tela de visualização onde pode alterar ou modificar sua consulta, se necessário. Você pode ver uma sintaxe completa do procedimento armazenado recém -criado através da bancada de trabalho. Clique no botão Aplicar para executá -lo.

Se não houver erros na consulta, funcionará corretamente como mostrado abaixo. Toque no botão de acabamento.

Quando você olha para a opção de procedimentos armazenados e a atualiza, ele mostrará um procedimento recém -criado.

Quando você executa esse procedimento, ele mostrará os únicos registros com um valor de coluna do 'site' é 'Instagram' como abaixo.

Crie procedimento armazenado via shell da linha de comando:

Abra o shell cliente da linha de comando do MySQL 8.0 e insira a senha do MySQL por baixo.

Suponha que tenhamos uma tabela chamada 'registro' no esquema de banco de dados 'dados'. Vamos verificar os registros dele usando o comando SELECT da seguinte forma:

>> Selecione * FROM dados.registro;

Use o comando 'use dados' para usar o banco de dados onde você deseja adicionar o procedimento armazenado.

>> Use dados;

Exemplo 01: Procedimento armazenado sem parâmetros

Para criar um procedimento sem um parâmetro, você deve criá -lo com um comando de criação de procedimento precedido pela palavra -chave 'delimitador'. Em seguida, criamos um procedimento chamado 'filtro' sem parâmetros. Ele busca todos os registros da tabela 'registro' onde a coluna 'país' tem 'ia' no final de seus valores. O processo deve ser encerrado com a palavra -chave 'fim'.

Usaremos a cláusula de chamada para executar o procedimento armazenado na linha de comando. Ao executar o comando de chamada, temos os resultados abaixo. Você pode ver que a consulta precisa buscar apenas os registros em que a coluna 'país' tem 'ia' no final de seus valores.

Exemplo 02: Procedimento armazenado com um único parâmetro

É hora de gerar um procedimento com um único parâmetro. Para isso, use a consulta Create Procedure liderada pela palavra -chave 'delimitador.'Então, temos que criar um procedimento' Rec 'que assume um valor como um argumento de entrada no qual neste exemplo é variável' var1 'por um usuário em seus parâmetros. Comece o procedimento por palavra -chave 'BEGIN'. A instrução SELECT é usada para buscar todos os registros da tabela 'registro' em que a coluna 'nome' tem o mesmo valor que em 'var1'. Esta é uma correspondência de registros. Termine o procedimento armazenado com a palavra -chave 'end' seguida por '&&' sinais.

'

Execute a consulta delimitadora primeiro para o procedimento armazenado para se preparar. Depois disso, execute a consulta de chamada seguida pelo nome do procedimento e seu valor de argumento de entrada no aparelho. Você só precisa executar o comando abaixo da balança e você terá os resultados. Como fornecemos, 'Zafar' em nossos parâmetros, é por isso que, após a comparação, temos esse resultado.

Exemplo 03: Procedimento armazenado com vários parâmetros

Vamos ver como o procedimento funciona quando for fornecido com vários parâmetros. Não se esqueça de usar a palavra -chave 'delimitador' junto com '&&' sinais. Use o comando Create Procedure para criar um procedimento 'novo'. Este procedimento estará recebendo dois argumentos em seus parâmetros e.g. 'var1' e 'var2'. Inicie o procedimento com a cláusula de início. Agora é algo novo. A cláusula de seleção está novamente buscando todos os registros da tabela 'registro'. O primeiro argumento aprovado por um usuário será correspondido aos valores de 'nome' da coluna. Por outro lado, o segundo argumento aprovado por um usuário será correspondido aos valores da coluna 'país'. Se os registros corresponderem, ele buscará todos os dados de linhas consecutivas. O procedimento seria concluído com a palavra -chave 'fim'.

Use a palavra -chave Delimiter para ativar o procedimento. Depois disso, execute a cláusula de chamada seguida pelo nome do procedimento armazenado, que é 'novo' junto com os valores dos parâmetros. Fica claro a partir da imagem abaixo que a consulta só buscará o registro da tabela 'registro', onde ambos os valores inseridos pela correspondência do usuário.

Conclusão:

Neste guia, você aprendeu sobre as diferentes maneiras de criar um procedimento armazenado no MySQL Workbench e o MySQL Command-Line Client Shell E.g., Procedimento armazenado com e sem parâmetros.