Packages Flashcards

(31 cards)

1
Q

O que é um Package?

A

Um objeto de banco de dados que agrupa logicamente outros objetos como programas, variáveis e cursores.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Como um Package é armazenado após a criação?

A

Como um Package é armazenado após a criação?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Quais são os tipos de componentes que podem ser especificados em um Package?

A

Componentes públicos (acessados externamente) e componentes privados (usados internamente).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Quais são as partes principais de um Package?

A

Especificação (declara os itens públicos), Corpo (define a implementação) e Inicialização (declara variáveis e trata erros).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Quais são as vantagens de usar Packages?

A

Modularidade, facilidade no design de aplicativos, possibilidade de adicionar novas funcionalidades e melhoria no desempenho.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Como os Packages melhoram o desempenho?

A

Ao serem invocados, são carregados na memória, evitando I/O de disco em invocações subsequentes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

O que acontece se alterarmos o corpo de uma função em um Package?

A

O Oracle Database não recompilará outros programas que invocam essa função, desde que a interface pública não seja alterada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

O que é a especificação de um pacote?

A

É a parte do pacote que declara os itens públicos que serão referenciados fora do pacote.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

O que é o corpo de um pacote?

A

É a parte do pacote onde definimos as consultas para acessar os cursores públicos e os códigos dos programas públicos, além de itens privados.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

O que é a parte de inicialização de um pacote?

A

É a parte do pacote onde inicializamos a declaração de variáveis, fazemos configurações únicas e tratamos erros.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Qual a importância de conhecer as dependências ao criar um pacote?

A

Conhecer as dependências é crucial para incluir todos os objetos necessários no pacote, garantindo que os usuários tenham acesso a tudo o que precisam para manipular a tabela desejada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Qual o primeiro passo ao conceder acesso a uma tabela para um grupo de usuários usando pacotes?

A

O primeiro passo é identificar todos os objetos que possuem dependência com essa tabela.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Qual o objetivo de colocar todos os objetos dependentes em um pacote?

A

O objetivo é permitir que o acesso seja concedido ao pacote em vez de objetos individuais, simplificando o gerenciamento de permissões.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Qual a principal vantagem de usar pacotes ao conceder acesso à tabela CLIENTE?

A

Reduz a necessidade de múltiplos comandos GRANT e sinônimos, simplificando o processo de gerenciamento de permissões.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Quantos comandos são necessários ao usar pacotes em vez de conceder permissões individuais?

A

Apenas dois comandos: um GRANT para dar acesso ao pacote e um sinônimo para facilitar a referência ao pacote.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Qual o benefício organizacional de usar pacotes?

A

Centraliza tudo relacionado ao acesso e manipulação da tabela CLIENTE em um único local, facilitando a gestão e manutenção.

17
Q

Como os pacotes facilitam a adição de novas funcionalidades?

A

Novas procedures ou funções podem ser adicionadas ao pacote sem a necessidade de conceder novas permissões ou criar sinônimos, pois todos com acesso ao pacote já podem manipular a nova funcionalidade automaticamente.

18
Q

Quais são as duas fases principais na criação de um pacote PL/SQL quando ele contém uma procedure?

A

1.Criar o cabeçalho do pacote.
2.Criar o corpo do pacote.

19
Q

Por que é necessário criar um pacote em duas fases (cabeçalho e corpo) ao trabalhar com procedures?

A

O cabeçalho declara os objetos (como a procedure e seus parâmetros), enquanto o corpo contém a implementação real da lógica da procedure.

20
Q

Qual a ordem correta para criar um pacote PL/SQL?

A

Primeiro o cabeçalho, depois o corpo.

21
Q

Qual usuário do Oracle deve ser usado para criar o pacote?

A

O usuário que é o dono dos objetos que farão parte do pacote

22
Q

Qual é o comando SQL usado para criar ou substituir o cabeçalho de um pacote?

A

CREATE OR REPLACE PACKAGE nome_do_pacote

23
Q

Quais palavras-chave delimitam a seção de declaração de objetos no cabeçalho do pacote?

24
Q

O que deve ser incluído no cabeçalho do pacote para uma procedure?

A

A declaração da procedure, incluindo seu nome e a lista de parâmetros com seus respectivos tipos.

25
De onde você pode obter a declaração da procedure para incluir no cabeçalho do pacote?
Do código-fonte original da procedure.
26
O que deve ser removido da declaração original da procedure ao copiá-la para o cabeçalho do pacote?
Os comandos CREATE OR REPLACE e NONEDITIONABLE.
27
O que significa a mensagem "Package CLIENTE_PAC compilado" após executar o script?
Que o cabeçalho do pacote foi criado com sucesso.
28
Qual comando SQL é usado para criar o corpo de um pacote?
CREATE OR REPLACE PACKAGE BODY nome_do_pacote
29
O que deve ser feito ao criar o corpo de um pacote?
Copiar o código da procedure do cabeçalho para dentro do corpo, entre as palavras-chave IS e END.
30
O que acontece após executar o código de criação do corpo do pacote?
O corpo do pacote é compilado e pode ser visualizado na aba "Conexões" da interface.
31
Sabemos que todo package pode ter um corpo. Mas para que ele serve?
O corpo da package é o lugar onde escrevemos o código completo de cada rotina declarada na parte de especificação. Ter o código completo de cada rotina declarada na parte de especificação é a sua função.