Criar Package e Procs dentro

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
pnet1
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 73
Registrado em: Qui, 23 Jan 2020 9:12 pm

Preciso criar 2 procs e irão rodar dentro de uma package. Para fazer isso, eu preciso criar a Package e as procs? Devo criar dentro da package? E como faço isso, pois vi umas procs aqui e elas tem um cabeçalho e um corpo e devo criar assim ou não?
pnet1
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 73
Registrado em: Qui, 23 Jan 2020 9:12 pm

Só uma dúvida. Quando eu dou um Create Package Nome_PKG eu crio apenas o cabeçalho, correto? E se depois eu dou um Create Package Body Nome_PKG, eu crio o body da package, desde que eles possuem o mesmo nome, está correto? São dois scripts para a mesma package, é isso mesmo?
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Correto.

Primeiro cria PACKAGE com a chamada das procedures que serão públicas.
Exemplo:

Selecionar tudo

CREATE PACKAGE PCK_ABC
AS
 PROCEDURE p1 ( p number );
 PROCEDURE p2 ( n number );
END;
Depois você cria o PACKAGE BODY com as mesmas procedures que foram declaradas acima
As procedure P1 e P2 poderão ser acessadas de qualquer lugar.
Se você criar uma P3 apenas dentro do package BODY, esse P3 será visível apenas DENTRO da PCK_ABC.
pnet1
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 73
Registrado em: Qui, 23 Jan 2020 9:12 pm

dr_gori, só para entender. Nenhuma procedure dentro de uma package tem create or replace procedure. É isso mesmo?
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Não.

Você pode usar CREATE OR REPLACE PACKAGE pra criar a package com todas as functions e procedures dentro.
Mas dentro da package, não é CREATE OR REPLACE.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes