SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Juliana Alvares
●   É um conjunto de comandos SQL que
    pode ser armazenados no servidor.
Vantagens
●   Os comandos não precisam ser reenviados, basta
    apenas fazer referência a ele.
●   Pode-se criar uma biblioteca de funções no Servidor.
●   Várias aplicações escritas em diferentes linguagens
    que realizam uma mesma tarefa.
●   Permite a padronização da entrada de dados
SINTAXE
CREATE PROCEDURE proc_name([parameters, ...])
[characteristics]
[BEGIN]

      corpo_da_rotina;

[END]
SINTAXE
 proc_name: seu procedimento armazenado deve ter um
 nome, para quando for chamado, podermos então usá-lo;
SINTAXE
    Existem 3 tipos de parâmetros em uma Stored Procedure:

●   IN => este é um parâmetro de entrada, ou seja, um parâmetro cujo seu valor
    será utilizado no interior do procedimento para produzir algum resultado;

●   OUT => este parâmetro retorna algo de dentro do procedimento para o lado
    externo, colocando os valores manipulados disponíveis na memória ou no
    conjunto de resultados;

●   INOUT => faz os dois trabalhos ao mesmo tempo!
SINTAXE
 parameters: nessa parte do procedimento, informaremos
 os parâmetros da seguinte forma: [IN | OUT | INOUT]
 nome_parametro tipo_dado.
SINTAXE
characteristics: as características do procedimento pode
apresentar. Como não utilizaremos inicialmente tais
características, vamos nos ater a sintaxe principal. Questões
de segurança, se é determinística ou não, qual a linguagem
que estamos utilizando e se nosso procedimento modificará
dados na banco de dados, são algumas das características
que poderemos definir neste item, as quais não serão
abordadas nessas aula.
SINTAXE
corpo_da_rotina: onde são definidos os comandos SQL que
farão alguma manipulação e/ou defenderão alguma lógica,
podendo retornar ou não algum resultado.
EXEMPLO
DELIMITER $$

CREATE PROCEDURE empresa.TOTAL_DEPTO ()

BEGIN
 SELECT COUNT(*) TOTAL FROM empresa.departamento;
END $$

DELIMITER ;
EXEMPLO (Variáveis)
DELIMITER $$

CREATE PROCEDURE empresa.OLA ()
BEGIN
  DECLARE Mensagem VARCHAR(11);
  SET Mensagem = ‘Alo, Mundo’;
 SELECT Mensagem;
END $$

DELIMITER ;
EXEMPLO (Parâmetros)
DELIMITER $$

CREATE PROCEDURE empresa.OLA (IN NOME VARCHAR(40))
BEGIN
 SELECT CONCAT('OLÁ ',NOME, ' HORA CERTA: ',NOW()) OI;
END $$

DELIMITER ;
EXEMPLO (IN,OUT)
DELIMITER $$

CREATE PROCEDURE SOMA(IN A INTEGER, IN B INTEGER, OUT S)
BEGIN
  SET S = A+B;
END $$

DELIMITER ;
CALL SOMA(5,3,@saida);
SELECT @saida;
EXEMPLO (IF)
DELIMITER $$
CREATE PROCEDURE COMPARA(IN A INTEGER, IN B INTEGER)
BEGIN
  DECLARE RESP VARCHAR(20);
  IF (A > B) THEN
        SET RESP =‘A MAIOR QUE B’;
  ELSE
        SET RESP =‘A MENOR QUE B’;
  END IF
  SELECT RESP;
END $$
DELIMITER ;

Contenu connexe

Tendances

Aula 10 - Trabalhando com Templates - Programação Web
Aula 10  - Trabalhando com Templates - Programação WebAula 10  - Trabalhando com Templates - Programação Web
Aula 10 - Trabalhando com Templates - Programação Web
Dalton Martins
 
Linguagem de Programação - aula 04
Linguagem de Programação - aula 04Linguagem de Programação - aula 04
Linguagem de Programação - aula 04
Willian Carvalho
 

Tendances (20)

Aula 10 - Trabalhando com Templates - Programação Web
Aula 10  - Trabalhando com Templates - Programação WebAula 10  - Trabalhando com Templates - Programação Web
Aula 10 - Trabalhando com Templates - Programação Web
 
Shell Script - Aula 04
Shell Script - Aula 04Shell Script - Aula 04
Shell Script - Aula 04
 
SCAP ( Security Content Automation Protocol ) na BSides São Paulo 2014
SCAP ( Security Content Automation Protocol ) na BSides São Paulo 2014SCAP ( Security Content Automation Protocol ) na BSides São Paulo 2014
SCAP ( Security Content Automation Protocol ) na BSides São Paulo 2014
 
Intro xml file
Intro xml fileIntro xml file
Intro xml file
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
 
2º introdução a lógica de programação
2º introdução a lógica de programação2º introdução a lógica de programação
2º introdução a lógica de programação
 
Linguagem de Programação - aula 04
Linguagem de Programação - aula 04Linguagem de Programação - aula 04
Linguagem de Programação - aula 04
 
Principais Conceitos de Sistemas - TGS
Principais Conceitos de Sistemas - TGSPrincipais Conceitos de Sistemas - TGS
Principais Conceitos de Sistemas - TGS
 
Pascal Unit
Pascal UnitPascal Unit
Pascal Unit
 
3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics
 
Projeto de Software (Protótipo de Software).
Projeto de Software (Protótipo de Software).Projeto de Software (Protótipo de Software).
Projeto de Software (Protótipo de Software).
 
Apostila PhP com Wamp 3a Parte
Apostila PhP com Wamp 3a ParteApostila PhP com Wamp 3a Parte
Apostila PhP com Wamp 3a Parte
 
2832014 curso plsql
2832014 curso plsql2832014 curso plsql
2832014 curso plsql
 
AOO - Diagrama de Caso de Uso
AOO - Diagrama de Caso de UsoAOO - Diagrama de Caso de Uso
AOO - Diagrama de Caso de Uso
 
Apostila ph pwamp_parte5
Apostila ph pwamp_parte5Apostila ph pwamp_parte5
Apostila ph pwamp_parte5
 
Treinamento Oracle Forms
Treinamento Oracle FormsTreinamento Oracle Forms
Treinamento Oracle Forms
 
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSIAula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
 
Será que testar é simples?
Será que testar é simples?Será que testar é simples?
Será que testar é simples?
 
Diagrama de Casos de Uso
Diagrama de Casos de UsoDiagrama de Casos de Uso
Diagrama de Casos de Uso
 
Refactoring Databases - Estrategias
Refactoring Databases - EstrategiasRefactoring Databases - Estrategias
Refactoring Databases - Estrategias
 

Similaire à Stored procedure

J Boss Rules Mgjug V2
J Boss Rules Mgjug V2J Boss Rules Mgjug V2
J Boss Rules Mgjug V2
Breno Barros
 
(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - Subalgoritmos(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - Subalgoritmos
Carlos Santos
 
Banco de dados aula 4
Banco de dados aula 4Banco de dados aula 4
Banco de dados aula 4
Ed W. Jr
 

Similaire à Stored procedure (20)

Net Coders Ladies SQL
Net Coders Ladies SQL Net Coders Ladies SQL
Net Coders Ladies SQL
 
Stored Procedures and Triggers
Stored Procedures and TriggersStored Procedures and Triggers
Stored Procedures and Triggers
 
Aula1
Aula1Aula1
Aula1
 
Aprofundamento de DDL e DML
Aprofundamento de DDL e DMLAprofundamento de DDL e DML
Aprofundamento de DDL e DML
 
Fazendo Um Elefante Passar Debaixo da Porta - FISL
Fazendo Um Elefante Passar Debaixo da Porta - FISLFazendo Um Elefante Passar Debaixo da Porta - FISL
Fazendo Um Elefante Passar Debaixo da Porta - FISL
 
Oracleplsql
OracleplsqlOracleplsql
Oracleplsql
 
Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8
 
J Boss Rules Mgjug V2
J Boss Rules Mgjug V2J Boss Rules Mgjug V2
J Boss Rules Mgjug V2
 
(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - Subalgoritmos(A10) LabMM3 - JavaScript - Subalgoritmos
(A10) LabMM3 - JavaScript - Subalgoritmos
 
Sql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoSql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumo
 
Fundamentos de SQL - Parte 1 de 8
Fundamentos de SQL - Parte 1 de 8Fundamentos de SQL - Parte 1 de 8
Fundamentos de SQL - Parte 1 de 8
 
Apresentação Oracle SGBD
Apresentação Oracle SGBDApresentação Oracle SGBD
Apresentação Oracle SGBD
 
Aula JPA
Aula JPAAula JPA
Aula JPA
 
Fazendo Um Elefante Passar Debaixo da Porta - CONSEGI
Fazendo Um Elefante Passar Debaixo da Porta - CONSEGIFazendo Um Elefante Passar Debaixo da Porta - CONSEGI
Fazendo Um Elefante Passar Debaixo da Porta - CONSEGI
 
UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6UNIFAL - MySQL Stored Routines - 5.0/5.6
UNIFAL - MySQL Stored Routines - 5.0/5.6
 
Minicurso PostgreSQl
Minicurso PostgreSQlMinicurso PostgreSQl
Minicurso PostgreSQl
 
TDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no AndroidTDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no Android
 
TDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no AndroidTDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no Android
 
Banco de dados aula 4
Banco de dados aula 4Banco de dados aula 4
Banco de dados aula 4
 
Java13
Java13Java13
Java13
 

Dernier

Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
azulassessoria9
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
tatianehilda
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.ppt
RogrioGonalves41
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 

Dernier (20)

Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.ppt
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
Renascimento Cultural na Idade Moderna PDF
Renascimento Cultural na Idade Moderna PDFRenascimento Cultural na Idade Moderna PDF
Renascimento Cultural na Idade Moderna PDF
 
classe gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxclasse gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptx
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedAula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.ppt
 
Conflitos entre: ISRAEL E PALESTINA.pdf
Conflitos entre:  ISRAEL E PALESTINA.pdfConflitos entre:  ISRAEL E PALESTINA.pdf
Conflitos entre: ISRAEL E PALESTINA.pdf
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
M0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptxM0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptx
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 

Stored procedure

  • 2. É um conjunto de comandos SQL que pode ser armazenados no servidor.
  • 3. Vantagens ● Os comandos não precisam ser reenviados, basta apenas fazer referência a ele. ● Pode-se criar uma biblioteca de funções no Servidor. ● Várias aplicações escritas em diferentes linguagens que realizam uma mesma tarefa. ● Permite a padronização da entrada de dados
  • 4. SINTAXE CREATE PROCEDURE proc_name([parameters, ...]) [characteristics] [BEGIN]       corpo_da_rotina; [END]
  • 5. SINTAXE proc_name: seu procedimento armazenado deve ter um nome, para quando for chamado, podermos então usá-lo;
  • 6. SINTAXE Existem 3 tipos de parâmetros em uma Stored Procedure: ● IN => este é um parâmetro de entrada, ou seja, um parâmetro cujo seu valor será utilizado no interior do procedimento para produzir algum resultado; ● OUT => este parâmetro retorna algo de dentro do procedimento para o lado externo, colocando os valores manipulados disponíveis na memória ou no conjunto de resultados; ● INOUT => faz os dois trabalhos ao mesmo tempo!
  • 7. SINTAXE parameters: nessa parte do procedimento, informaremos os parâmetros da seguinte forma: [IN | OUT | INOUT] nome_parametro tipo_dado.
  • 8. SINTAXE characteristics: as características do procedimento pode apresentar. Como não utilizaremos inicialmente tais características, vamos nos ater a sintaxe principal. Questões de segurança, se é determinística ou não, qual a linguagem que estamos utilizando e se nosso procedimento modificará dados na banco de dados, são algumas das características que poderemos definir neste item, as quais não serão abordadas nessas aula.
  • 9. SINTAXE corpo_da_rotina: onde são definidos os comandos SQL que farão alguma manipulação e/ou defenderão alguma lógica, podendo retornar ou não algum resultado.
  • 10. EXEMPLO DELIMITER $$ CREATE PROCEDURE empresa.TOTAL_DEPTO () BEGIN SELECT COUNT(*) TOTAL FROM empresa.departamento; END $$ DELIMITER ;
  • 11. EXEMPLO (Variáveis) DELIMITER $$ CREATE PROCEDURE empresa.OLA () BEGIN DECLARE Mensagem VARCHAR(11); SET Mensagem = ‘Alo, Mundo’; SELECT Mensagem; END $$ DELIMITER ;
  • 12. EXEMPLO (Parâmetros) DELIMITER $$ CREATE PROCEDURE empresa.OLA (IN NOME VARCHAR(40)) BEGIN SELECT CONCAT('OLÁ ',NOME, ' HORA CERTA: ',NOW()) OI; END $$ DELIMITER ;
  • 13. EXEMPLO (IN,OUT) DELIMITER $$ CREATE PROCEDURE SOMA(IN A INTEGER, IN B INTEGER, OUT S) BEGIN SET S = A+B; END $$ DELIMITER ; CALL SOMA(5,3,@saida); SELECT @saida;
  • 14. EXEMPLO (IF) DELIMITER $$ CREATE PROCEDURE COMPARA(IN A INTEGER, IN B INTEGER) BEGIN DECLARE RESP VARCHAR(20); IF (A > B) THEN SET RESP =‘A MAIOR QUE B’; ELSE SET RESP =‘A MENOR QUE B’; END IF SELECT RESP; END $$ DELIMITER ;