Índice
O Procedimentos armazenados são blocos de código SQL que são armazenados no banco de dados e são usados para realizar uma série de ações que vão além das consultas salvas, como boorkmarks, para chamá-los, fazemos com a instrução LIGAR, podemos até mesmo passar parâmetros para o Procedimentos armazenados.Criação de um procedimento armazenado
A fim de prosseguir com a criação de um Procedimento Armazenado (SP) devemos inicialmente ter as permissões de usuário de CRIAR ROTINA Y ALTER ROUTINE, para o usuário que iremos utilizar para criá-los no Banco de Dados, a permissão também será necessária EXECUTAR, embora isso seja atribuído automaticamente ao criador de um SP.
Para criar um SP, a primeira coisa que devemos fazer é ir para a Caixa de Consulta, geralmente para finalizar uma instrução SQL usamos o ponto e vírgula (
Feito isso, vamos inserir nosso código na caixa de consulta, vamos ver um exemplo de código:
CRIAR PROCEDIMENTO `add_page` (IN param_isbn VARCHAR (25), IN param_pages INT, OUT param_message VARCHAR (100)) BEGIN IF param_pages> 100 THEN SET param_message = 'o número de páginas é muito grande'; ELSE UPDATE book SET page_count = page_count + param_pages WHERE isbn = param_isbn; SET param_message = 'sucesso'; FIM SE; FIM //
Como podemos ver, não é muito difícil descobrir o que isso faz SP, a primeira linha é bastante simples, simplesmente definimos os parâmetros de entrada e saída do SP, então começamos com COMEÇAR nosso bloco, colocamos uma condicional IF ELSE onde avaliamos cada um dos parâmetros de entrada, de modo que com cada condição executamos uma ação, então fechamos os respectivos blocos de nosso SP com ENDIF e END e terminamos com // que é nosso delimitador personalizado.
Testando o procedimento armazenado
Uma vez definido, vamos testar nosso SP, para isso veremos alguns elementos que não havíamos usado, primeiro vamos ver o código e depois a explicação:
chamar add_page ('1-234567-22-0', 4, @message);
SELECT @message;
Vamos ver, usamos o LIGAR para chamar nosso SP, então passamos dois parâmetros que o SP Eu estava esperando e finalmente usamos uma variável MySQL para receber a resposta, na segunda linha simplesmente consultamos essa variável para obter seu valor; Como podemos ver, é muito fácil trabalhar com isso.
Manipulando o procedimento armazenado
O SP Ele fica armazenado no Banco de Dados, porém não está vinculado a nenhuma tabela específica, então para acessá-los primeiro vamos para a visão do banco de dados no phpMyAdmin, na página de estrutura teremos uma seção chamada Rotinas.
Quando clicamos no ícone de edição vemos que o código SP que ele nos mostra é algo diferente do nosso, vamos ver o que aparece:
DROP PROCEDURE `add_page` // CRIAR DEFINER =` marc` @ `%` PROCEDURE `add_page` (IN param_isbn VARCHAR (25), IN param_pages INT, OUT param_message VARCHAR (100)) BEGIN IF param_pages> 100 THEN SET param_message = ' o número de páginas é muito grande '; ELSE UPDATE book SET page_count = page_count + param_pages WHERE isbn = param_isbn; SET param_message = 'sucesso'; FIM SE;
O SP Não podemos alterá-los, portanto, ao tentar editá-lo, a primeira instrução é o DROP do SP, desta forma eliminamos para recriá-lo, nas linhas subsequentes, ele também gera uma linha onde se especifica o usuário que está especificado .é o criador do referido SP; uma vez que as mudanças tenham sido feitas clicando em Ir nós criamos nosso SP modificado e ele é salvo no Banco de Dados.
Com isso terminamos o tutorial, como vemos o Procedimentos armazenados Eles são bastante úteis para armazenar blocos de instruções que podemos chamar a qualquer momento, o que nos dá o poder de sub-rotinas dentro do Banco de Dados.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo