-
08/04/2015 CriandoProcedureStoredProceduresemPL/SQL
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232 1/7
Gostei(0) (0)
Buscar
comentrios postfavorito(3)
Criando Procedure - StoredProcedures em PL/SQLEste o primeiro artigo de uma srie sobre storedprocedures do PL/SQL. Seu objetivo descrever a maneirade criar um programa PL/SQL e execut-lo no SQL*Plus.
1. IntroduoOobjetivoprincipaldesteartigodemonstraraformacomoumprogramaPL/SQL
podesercriadoemumeditordetextosqualquerparaposteriormenteser
0 1Curtir0
-
08/04/2015 CriandoProcedureStoredProceduresemPL/SQL
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232 2/7
compiladoeexecutadonoSQL*Plus.Serelaboradaumastoredprocedurebem
simples,paraexibiramensagemHelloWorld!noconsole.
2. Criando e Executando um ProgramaExecuteasseguintesetapas:
1.DigitaodoPrograma:digiteemumeditordetextosqualquerocdigo
apresentadoaseguir.
Listagem1:StoredProcedurequeimprimeamensagemHelloWorld
CREATEORREPLACEPROCEDUREp_helloIS
BEGIN/*CorpodoBlocodeComandos*/
DBMS_OUTPUT.PUT_LINE('HelloWorld!');imprimeHelloWorld!
ENDp_hello;/
Esteprogramacriaumaprocedurechamadap_hello,quecontmapenasuma
linhadecomando.Noteque:
Aprimeiralinhadoprogramaindicaotipodemduloqueestsendocriado
(PROCEDURE)etambmatribuiumnome(p_hello)aestemdulo.
Ocorpodoblocodecomandos(oublocoprincipal)delimitadopelaspalavras
reservadasBEGINeEND.
OcomandoDBMS_OUTPUT.PUT_LINEutilizadoparafazerasadade
informaes.Naverdade,DBMS_OUTPUTonomedopacoteinterno(builtin
package)doPL/SQLquecontmproceduresvoltadassadadedadosno
console(SQL*Plus),sendoquePUT_LINEumadestasprocedures.Este
pacoteusadoprincipalmentenadepuraodeprogramaseaindaser
discutidonestaapostila.Porenquantovocpodeimaginaro
DBMS_OUTPUT.PUT_LINEcomoalgosimilaraoSystem.out.printlndoJava,
ouaocomandoprintfdoC.
-
08/04/2015 CriandoProcedureStoredProceduresemPL/SQL
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232 3/7
Oscomentriospodemserdefinidosentreossmbolos/*e*/oudepois
dedoistraos.Noprimeirocaso,podemsercolocadosemmltiplas
linhas.
Otextoencerradocom/paraforaracompilaodoprogramano
SQL*Plus(/ocomandosigaemfrentenoSQL*Plus).
2.CompilaodoPrograma:Agraqueoprogramaestpronto,poderser
armazenadoecompiladonobancoOracle.OSQL*Pluspodeserusadoparaisso.
Salveoprogramanumapastadoseumicro.Porexemplo:
c:\temp\p_hello.txt.
ExecuteoSQL*Plus,conectandoemalgumabasequevocpossaacessar.
ComistovocestarabrindoumasessocomoOracle.
Inicialmente,serprecisocompilaraprocedure.Amelhormaneiraparafazer
issonoSQL*Plusatravsdocomando@(comandoquepermitealeitura
descripts).
Listagem2:CompilaodaStoredProcedurenoSQL*Plus
SQL>@c:\temp\p_hello.txtProcedimentocriado.
3.ExecuodoPrograma:podeserfeitacomousodocomandoEXECUTE(ou
EXEC)doSQL*Plus.Digite:
Listagem3:ExecuodoPrograma
SQL>execp_hello;
ProcedimentoPL/SQLconcludocomsucesso.
-
08/04/2015 CriandoProcedureStoredProceduresemPL/SQL
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232 4/7
Notequealgoestranhoaconteceu.EmboraoSQL*Plustenhainformadoquea
procedurefoiexecutadacomsucesso,amensagemHelloWorld!nofoiexibida
natela.IstoocorreporqueasessodoSQL*Plusseiniciaconfiguradaparano
exibirasadadedadosgeradapeloDBMS_OUTPUT.Paramudareste
comportamentoexecuteoseguintecomando:
Listagem4:Habilitandomensagensdeconsole
SQL>SETSERVEROUTON
IstohabilitaasadadedadosnoSQL*Plusparaasessocorrente.Eleprecisaser
digitadoumanicavezporsesso(umavezocomandodigitado,eleficarvlido
paratodaasessodoSQL*Plus).Executenovamenteaprocedure.Destavez,a
mensagemserexibidanoconsole.
Listagem3:ExecuodoProgramaapsoSETSERVEROUTON
SQL>execp_hello;
HelloWorld!
ProcedimentoPL/SQLconcludocomsucesso.
IMPORTANTE:EXEC,@eSETSERVEROUTNOsocomandosdalinguagem
PL/SQL,esimcomandosdoSQL*Plus.SQL*Plusoconsolefornecidopela
OracleparapermitiraexecuointerativadecomandosSQLeprogramasPL/SQL.
EstaapostilaapresentarpouqussimoscomandosdoSQL*Plus,umavezquetem
porobjetivoabordaraprogramaoPL/SQL.
EduardoCorraGonalves
0nfejc
-
08/04/2015 CriandoProcedureStoredProceduresemPL/SQL
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232 5/7
Gostei(0) (0)
Oquevocachoudestepost?
Postardvida/Comentrio
DoutorandoemestreemCinciadaComputaopeloInstitutodeComputaodaUniversidadeFederalFluminense(IC/UFF).Atuaprincipalmentenasseguinteslinhasdepesquisa:MineraodeDados,Algoritmos,BancodeDadoseXML.
NohcomentriosMeuscomentarios
Servios
Incluaumcomentrio
AdicionaraosFavoritos
Marcarcomolido/assistido
Incluiranotaopessoal
Versoparaimpresso
+Bancodedados
-
08/04/2015 CriandoProcedureStoredProceduresemPL/SQL
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232 6/7
Mais postsPocket Video
Por que devo aprender XP
Video aula
Terceira Forma Normal - Curso Modelagem de Dados - Aula26
Video aula
Aplicaes da Segunda Forma Normal - Curso Modelagem deDados - Aula 25
Video aula
Segunda Forma Normal - Curso Modelagem de Dados - Aula24
Video aula
Primeira Forma Normal - Curso Modelagem de Dados - Aula23
Video aula
Normalizao e Anomalias - Curso Modelagem de Dados -Aula 22
Video aula
Dependncias Funcionais - Curso Modelagem de Dados -Aula 21
Video aula
-
08/04/2015 CriandoProcedureStoredProceduresemPL/SQL
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232 7/7
MySQL Administrador - Curso Completo de MySQL - Aula 16
Video aula
Ferramentas e Utilitrios - Curso Completo de MySQL - Aula15
Listar mais contedo
Anuncie | Loja | Publique | Assine | Faleconosco
HospedagemwebporPorta80WebHosting
DevMediaVoccurtiuisso.
Voceoutras63.895pessoascurtiramDevMedia.
PluginsocialdoFacebook
Curtir