Anda di halaman 1dari 7

08/04/2015

CriandoProcedureStoredProceduresemPL/SQL

Buscar

comentrios

postfavorito(3)

Criando Procedure - Stored


Procedures em PL/SQL
Este o primeiro artigo de uma srie sobre stored
procedures do PL/SQL. Seu objetivo descrever a maneira
de criar um programa PL/SQL e execut-lo no SQL*Plus.

Gostei(0)

Curtir

(0)

1. Introduo
OobjetivoprincipaldesteartigodemonstraraformacomoumprogramaPL/SQL
podesercriadoemumeditordetextosqualquerparaposteriormenteser
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232

1/7

08/04/2015

CriandoProcedureStoredProceduresemPL/SQL

compiladoeexecutadonoSQL*Plus.Serelaboradaumastoredprocedurebem
simples,paraexibiramensagemHelloWorld!noconsole.

2. Criando e Executando um Programa


Executeasseguintesetapas:
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.
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232

2/7

08/04/2015

CriandoProcedureStoredProceduresemPL/SQL

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.txt
Procedimentocriado.

3.ExecuodoPrograma:podeserfeitacomousodocomandoEXECUTE(ou
EXEC)doSQL*Plus.Digite:
Listagem3:ExecuodoPrograma
SQL>execp_hello;
ProcedimentoPL/SQLconcludocomsucesso.

http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232

3/7

08/04/2015

CriandoProcedureStoredProceduresemPL/SQL

Notequealgoestranhoaconteceu.EmboraoSQL*Plustenhainformadoquea
procedurefoiexecutadacomsucesso,amensagemHelloWorld!nofoiexibida
natela.IstoocorreporqueasessodoSQL*Plusseiniciaconfiguradaparano
exibirasadadedadosgeradapeloDBMS_OUTPUT.Paramudareste
comportamentoexecuteoseguintecomando:
Listagem4:Habilitandomensagensdeconsole
SQL>SETSERVEROUTON

DEVMEDIA

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
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232

4/7

08/04/2015

CriandoProcedureStoredProceduresemPL/SQL

DoutorandoemestreemCinciadaComputaopeloInstitutodeComputaodaUniversidadeFederal
Fluminense(IC/UFF).Atuaprincipalmentenasseguinteslinhasdepesquisa:MineraodeDados,
Algoritmos,BancodeDadoseXML.

Oquevocachoudestepost?
Gostei(0)

(0)

Nohcomentrios

Postardvida/Comentrio

Meuscomentarios

Servios
Incluaumcomentrio
AdicionaraosFavoritos
Marcarcomolido/assistido
Incluiranotaopessoal
Versoparaimpresso

+Bancode
dados

http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232

5/7

08/04/2015

CriandoProcedureStoredProceduresemPL/SQL

Mais posts
Pocket Video

Por que devo aprender XP


Video aula

Terceira Forma Normal - Curso Modelagem de Dados - Aula


26
Video aula

Aplicaes da Segunda Forma Normal - Curso Modelagem de


Dados - Aula 25
Video aula

Segunda Forma Normal - Curso Modelagem de Dados - Aula


24
Video aula

Primeira Forma Normal - Curso Modelagem de Dados - Aula


23
Video aula

Normalizao e Anomalias - Curso Modelagem de Dados Aula 22


Video aula

Dependncias Funcionais - Curso Modelagem de Dados Aula 21


Video aula
http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232

6/7

08/04/2015

CriandoProcedureStoredProceduresemPL/SQL

MySQL Administrador - Curso Completo de MySQL - Aula 16


Video aula

Ferramentas e Utilitrios - Curso Completo de MySQL - Aula


15
Listar mais contedo

Anuncie | Loja | Publique | Assine | Faleconosco

DevMedia
Curtir Voccurtiuisso.

Voceoutras63.895pessoascurtiramDevMedia.

PluginsocialdoFacebook

HospedagemwebporPorta80WebHosting

http://www.devmedia.com.br/criandoprocedurestoredproceduresemplsql/24232

7/7

Anda mungkin juga menyukai