Questões de Banco de Dados do Banco da Amazônia

Limpar Busca

As tabelas a seguir fazem parte do banco de dados da área de recursos humanos de uma empresa. Elas registram os dados referentes aos empregados e aos seus dependentes.

CREATE TABLE EMPREGADO (      MATRICULA INTEGER NOT NULL,      NOME TEXT NOT NULL,      DATA_NASC TEXT NOT NULL,      CERT_RESRV INTEGER UNIQUE NULL,      PRIMARY KEY (MATRICULA));

CREATE TABLE DEPENDENTE (      MAT_EMP INTEGER NOT NULL,      NUM_SEQ INTEGER NOT NULL,      NOME TEXT NOT NULL,      DATA_NASC TEXT NOT NULL,      PRIMARY KEY (MAT_EMP, NUM_SEQ)      FOREIGN KEY (MAT_EMP)           REFERENCES EMPREGADO (MATRICULA));

O estado corrente desse banco de dados é exibido nas figuras abaixo.

Imagem relacionada à questão do Questões Estratégicas

Qual comando INSERT irá falhar, na tentativa de incluir uma nova linha em uma das tabelas desse banco de dados?

  • A INSERT INTO DEPENDENTE(NUM_SEQ,MAT_EMP,DATA_NASC,NOME) VALUES(00,11111,datetime(‘2015-01-06‘),‘Luiz Paulo‘);
  • B INSERT INTO DEPENDENTE(NOME,DATA_NASC,NUM_SEQ,MAT_EMP) VALUES(‘Maria Paula‘,datetime(‘2017-08-11‘),3,11111);
  • C INSERT INTO EMPREGADO VALUES(55555,‘Antônia Pinto‘,datetime(‘1994-04-01‘),NULL);
  • D INSERT INTO EMPREGADO VALUES(66666,‘Adriana Andrade‘,datetime(‘1985-06-04‘));
  • E INSERT INTO EMPREGADO VALUES(44444,‘Nilce Peçanha‘,datetime(‘1999-09-06‘),‘‘);

Considere que em um banco de dados de um banco comercial há duas tabelas:

PESSOA_FISICA (CPF, nome, email, telefone)
CLIENTE (CPF, nome, email, telefone).

Um funcionário de TI recebeu a tarefa de identificar corretamente quais pessoas físicas, cadastradas na tabela PESSOA_FISICA, ainda não eram clientes, pois não estavam cadastradas na tabela CLIENTE. Para isso, ele utilizou um comando SELECT em SQL.

Que trecho, em SQL, faz parte de uma das possíveis soluções para essa tarefa?

  • A … WHERE PESSOA_FISICA.CPF NOT IN (SELECT CPF FROM CLIENTE…
  • B … HAVING PESSOA_FISICA.CPF != CLIENTE.CPF…
  • C … WHERE PESSOA_FISICA.CPF <> CLIENTE.CPF...
  • D … DISTINCT PESSOA_FISICA.CPF FROM CLIENTE WHERE ...
  • E … IN PESSOA_FISICA BUT NOT IN CLIENTE...

Considere a tabela não normalizada CLIENTE-v1 (CPF, nome, endereço, cidade, UF, telefone, conta-corrente) que possui as seguintes características:

• a chave primária é o atributo CPF;
• o atributo conta-corrente é uma chave estrangeira;
• todos os atributos são determinados funcionalmente pelo CPF;
• o atributo UF é determinado funcionalmente pelo atributo cidade; e
• não há atributos multivalorados.

Qual forma normal foi violada e que tabelas devem ser criadas como consequência dessa violação?

  • A A tabela CLIENTE-v1 não está na primeira forma normal (1FN), e, portanto, devem ser criadas as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, UF, conta-corrente) e CLIENTE_TELEFONE (CPF, telefone).
  • B A tabela CLIENTE-v1 não está na primeira forma normal (1FN), e, portanto, devem ser criadas as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, UF, telefone) e CLIENTE_CONTA (CPF, conta-corrente).
  • C A tabela CLIENTE-v1 não está na terceira forma normal (3FN), e, portanto, devem ser criadas as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, telefone, conta-corrente) e CIDADE (cidade, UF).
  • D A tabela CLIENTE-v1 não está na segunda forma normal (2FN), e, portanto, devem ser criadas as tabelas CLIENTE-v2 (CPF, nome, endereço, cidade, UF) e CLIENTE_CONTA_TELEFONE (CPF, conta-corrente, telefone).
  • E A tabela CLIENTE-v1 não está na terceira forma normal (3FN), e, portanto, devem ser criadas as tabelas CLIENTE-v2 (CPF, nome, telefone, conta-corrente) e CLIENTE_ENDERECO (CPF, endereço, cidade, UF).

Em banco de dados, os gatilhos são utilizados, entre outros objetivos, para implementar restrições de integridade. Considere que em um banco de dados de um banco comercial há duas tabelas, CLIENTE (chave primária CPF) e SERVICO (chave primária composta por CPF e identificação do serviço), e há a restrição de que um cliente não pode estar associado a mais de cinco serviços.

Que definição deve ser utilizada para implementar essa restrição por meio de um gatilho?

  • A BEFORE INSERT ON CLIENTE
  • B AFTER INSERT ON CLIENTE
  • C BEFORE INSERT ON SERVICO
  • D AFTER INSERT ON SERVICO
  • E WHEN CLIENTE INSERT ON SERVICO

No banco de dados de um banco comercial, há uma tabela TRANSFERENCIA onde são registrados a data, a hora, o minuto e o segundo da transferência, além do valor transferido entre duas contas-correntes desse banco. Essa tabela tem, adicionalmente, duas chaves estrangeiras (FKs) que apontam para a tabela CONTA-CORRENTE. Considere que há, no máximo, uma transferência por segundo entre duas contas-correntes.

A chave primária (PK) da tabela TRANSFERENCIA (data, hora, minuto, segundo, valor, conta-origem, conta-destino) deve ser formada exatamente

  • A pelas duas FKs
  • B por todos os atributos
  • C pelas duas FKs e a data
  • D pela data, hora e minuto
  • E por todos os atributos exceto o valor