Questão 716891

Tecnologia da Informação · 2016

Questão

ID 716891

Disciplina: Tecnologia da Informação

Assunto: Triggers

Ano: 2016 Banca: FGV - Fundação Getúlio Vargas Órgão: Instituto Brasileiro de Geografia e Estatística


Atenção:

Algumas das questões seguintes fazem referência a um banco de dados relacional intitulado BOOKS, cujas tabelas e respectivas instâncias são exibidas a seguir. Essas questões referem-se às instâncias mostradas.

AUTOR

AutorID

AutorNome

1

2

3

Arthur Conan Doyle

Agatha Christie

Edgar Allan Poe

LIVRARIA

LivrariaID

LivrariaNome

1

2

3

4

Cultural

Travessia

Amazonas

Kremlin

LIVRO

LivroID

AutorID

Titulo

NumLivrarias

1

1

O Cão dos Baskervilles

NULL

2

1

As Aventuras de Sherlock Holmes

2

3

2

Assassinato no Expresso do Oriente

2

4

2

O Mistério dos Sete Relógios

3

5

3

Assassinatos na Rua Morgue

NULL

OFERTA

LivrariaID

LivroID

Preco

1

1

1

1

1

2

2

2

3

3

1

2

3

4

5

1

2

4

3

4

32

28

45

38

23

56

54

43

35

38

A tabela Livro representa livros. Cada livro tem um autor, representado na tabela Autor. A tabela Oferta representa os livros que são ofertados pelas livrarias, estas representadas pela tabela Livraria. NULL significa um campo não preenchido.

AutorID, LivrariaID e LivroID, respectivamente, constituem as chaves primárias das tabelas Autor, Livraria e Livro.

LivrariaID e LivroID constituem a chave primária da tabela Oferta.



No PostGreSQL, a linguagem PL/pgSQL pode ser utilizada para definir procedures que são executadas como triggers, quando várias “special variables” são criadas, no escopo do bloco mais externo, e tornam-se disponíveis para uso no código da procedure.

Nesse contexto, analise as seguintes afirmativas sobre algumas dessas variáveis e o funcionamento de triggers no PostgreSQL:

I. A variável NEW contém um valor booleano que indica se o registro objeto do trigger está sendo incluído (true) ou não (false).

II. A variável NEW contém os campos de um registro que está sendo incluído (insert) ou alterado (update).

III. A variável TG_OP contém uma string que determina o nome da operação que desencadeou o trigger (insert, update, etc.).

IV. Na declaração de um trigger, as opções FOR EACH ROW e FOR EACH STATEMENT são equivalentes, tendo sido mantidas apenas para efeito de compatibilidade com versões anteriores.

Está correto somente o que se afirma em:

Alternativas da questão 716891
Pular para o conteúdo principal