Questões de Banco de Dados para Concurso
Foram encontradas 15.577 questões
CREATE TABLE Cidades (NomeCidade VARCHAR(80) PRIMARY KEY, Estado VARCHAR(40));
Para que, ao se inserir ou atualizar algum registro na tabela Populacao, seja verificado se o campo Cidade corresponde a uma cidade existente na tabela Cidades, deve-se utilizar uma chave estrangeira. Isso é feito utilizando o comando SQL na criação da tabela Populacao:
CREATE TABLE Populacao (Cidade VARCHAR(80) ....I..... , NumHabitantes INT, NumVaras INT);
A lacuna I é corretamente preenchida com
DELETE FROM Funcionarios WHERE Data_Contratacao =
Considere a tabela EMPREGADOS definida abaixo em SQL.
Create table EMPREGADOS
(CODEMP INT PRIMARY KEY,
NOMEEMP VARCHAR(300) NOT NULL UNIQUE,
FUNCAO INT CHECK(FUNCAO BETWEEN 1 AND 5),
SALARIO FLOAT NOT NULL,
DEPTO INT NOT NULL);
Sobre esta tabela, foi definido um índice primário (codemp – chave primária), e dois índices secundários, um sobre nomeemp, e outro sobre funcao.
Uma pessoa do desenvolvimento reclamou à DBA que algumas de suas consultas sobre essa tabela estavam muito demoradas, e pediu apoio para melhoria do desempenho. A DBA examinou o plano de execução das consultas e, em vez de uma solução sobre o esquema da base de dados, sugeriu a reescrita das consultas.
Qual, dentre as consultas reescritas, melhorou o desempenho da consulta original porque resultou,
no plano de consulta, em uma operação (mais eficiente) sobre um índice?
set transaction isolation level repeatable read; Select max(salario) from funcionarios; Update funcionarios set salario = salario*10 where salario < (select avg(salario) from funcionarios); commit;
Ao definir esse nível de isolamento para sua transação, o programador está sujeito à ocorrência de problemas de acesso concorrente com outras transações. Analise cada assertiva abaixo, assinalando V, se verdadeira, ou F, se falsa.
( ) Leitura suja. ( ) Leitura não repetitiva. ( ) Registro fantasma.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
Foi solicitado à projetista que fizesse um modelo lógico relacional correspondente a este DER. A projetista mapeou as entidades A, B, C e D nas tabelas A, B, C e D, respectivamente, cada qual com sua chave primária (atributos a1, b1, c1 e d1, respectivamente) e demais atributos (a2, b2, c2 e d2, respectivamente).
Considere as seguintes assertivas sobre o mapeamento dos relacionamentos:
I. Deve ser criada uma tabela própria para representar o relacionamento AB, na qual deve haver colunas (chaves estrangeiras) referenciando as chaves primárias das tabelas A e B. II. O relacionamento BD pode ser modelado como uma coluna adicional na tabela B (chave estrangeira referenciando a chave primária da tabela D). III. O relacionamento BC pode ser modelado como uma coluna adicional (chave estrangeira) na tabela C ou B, sendo essas escolhas equivalentes. Se incluído na tabela C, esse atributo deve referenciar a chave primária da tabela B, e se incluído na tabela B, deve referenciar a chave primária da tabela C.
Quais estão corretas?
Foi solicitado a um estagiário fazer um projeto conceitual utilizando o modelo EntidadeRelacionamento (ER). Recebeu como recomendação que o projeto deveria conter os dados necessários para gerar este recibo, considerar o emprego correto do modelo de dados ER, e evitar redundâncias de dados que possam levar a problemas de integridade na base de dados.
Utilizando a notação gráfica proposta por Heuser (2009), baseada na proposta por Peter Chen com as extensões mais populares, o estagiário desenhou vários diagramas ER (DER). As caixas representam as entidades, os losangos os relacionamentos, as cardinalidades dos relacionamentos são representadas por pares (min-max), e os “pirulitos” representam os atributos. Quando pintado de preto, um “pirulito” representa uma restrição de identificação.
Qual DER melhor atende às recomendações recebidas?
I. 2PL garante possibilidade de serialização (serializability). II. 2PL evita deadlocks. III. 2PL não permite intercalação de lock e unlock.
Quais estão corretas?
(a) SELECT C.sobrenome, C.renda FROM clientes C WHERE C.codc <> ALL (SELECT V.codc FROM vendas V WHERE V.valor > 1000);
(b) SELECT C.sobrenome, C.renda FROM clientes C WHERE NOT EXISTS (SELECT 1 FROM vendas V WHERE V.valor > 1000 and V.codc = C.codc);
Considere as assertivas abaixo sobre a otimização baseada em desaninhamento de subconsultas no Oracle:
I. O recurso fundamental do desaninhamento de subconsultas é a conversão da subconsulta com processamento relacionado em outra equivalente com processamento não relacionado. II. No caso de uma subconsulta ALL, o desaninhamento explora semi-join. III. No caso de uma subconsulta NOT EXISTS, o desaninhamento explora o anti-join.
Quais estão corretas?
S1: r2(X), r1(X), r2(Y), r1(X), r2(Y), w2(Y) ... S2: r2(X), r2(Y), r1(X), r1(Y), w1(X) ... S3: r2(Y), r2(Y), r1(X), r1(Y), w1(X), w2(X) ...
Quais históricos apresentam operações conflitantes?
Create table ABASTECIMENTO (nbomb int not null, capac int not null, data_hora timestamp not null, placa char(7) not null, descr varchar(50) not null, ano_fab date not null, litros int not null, primary key (nbomb, data_hora));
A DBA analisou essa proposta e observou que não seguia as formas normais. Com base na descrição dos atributos acima, assinale com V, se a dependência funcional é responsável pelo fato da tabela não estar na terceira forma normal, ou com F, em caso contrário.
( ) nbomb, data-hora → capac ( ) nbomb, data-hora → placa ( ) nbomb, data-hora → ano-fab
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
I. Relacionamento MENTORIA, entidades ESTAGIARIO, MENTOR, e SETOR: em um programa de treinamento, um estagiário passa por vários setores da empresa, em cada um deles sendo atribuído a um mentor. Deseja-se registrar sobre cada mentoria, além do estagiário, do mentor, e do setor, a data de início e de fim da mentoria. II. Relacionamento CONSULTA, entidades MEDICO, PACIENTE, e EXAME: uma clínica médica oferece consultas e exames a seus pacientes. Deseja-se registrar sobre cada consulta realizada, além do médico e do paciente, a data/hora da consulta, a forma de pagamento, bem como possivelmente um ou mais exames solicitados durante a consulta. III. Relacionamento ALOCACAO, entidades PROJETO, FUNCIONARIO, e FUNCAO: uma empresa de TI desenvolve diferentes projetos, na qual aloca seus funcionários em uma dada função. Deseja-se registrar sobre cada alocação, além do funcionário, do projeto e da função, o número de horas alocado.
Qual dos relacionamentos acima poderia ser corretamente modelado por um relacionamento ternário entre as três entidades participantes indicadas?
insert into ESPECIALIDADES values (1,'cardiologia'); insert into ESPECIALIDADES values (2,'oftalmologia'); insert into ESPECIALIDADES values (3,'pediatria'); insert into MEDICOS values (1, 'joao', 1, 'ufrgs'); insert into MEDICOS values (2, 'maria', 1, 'pucrs'); insert into MEDICOS values (3, 'pedro', 2, 'ufsm');
Considere a sequência de comandos SQL abaixo, em que cada comando deve ser considerado uma transação separada:
I. delete from ESPECIALIDADES where nomee = 'pediatria'; II. update ESPECIALIDADES set code = 4 where nomee = 'oftalmologia'; III. delete from ESPECIALIDADES where nomee = 'cardiologia';
Após a execução das transações I, II e III, é possível afirmar que:
• A tabela ESPECIALIDADES tem __________ tupla(s); • Na tabela MEDICOS, no registro em que MEDICOS.codm = 1, o valor do atributo MEDICOS.code é _________; • Na tabela MEDICOS, no registro em que MEDICOS.codm = 3, o valor do atributo MEDICOS.code é _________.
Assinale a alternativa que preenche, correta e respectivamente, as lacunas do trecho acima.
( ) Oferece diferentes modelos de recuperação, entre eles o total, diferencial e log de transações. ( ) Um backup diferencial captura apenas as extensões dos dados alterados desde o último backup diferencial. ( ) Se a base de dados foi criada com múltiplos arquivos de dados, é possível criar backups de arquivos individuais e restaurá-los individualmente.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
( ) Existem quatro tipos de bancos de dados standby: físico, lógico, snapshot e cloud. ( ) Uma transição do banco de dados primário para uma base de dados standby pode ocorrer tanto para gerenciar casos de falha (failover), tais como desastres e corrupção de dados, quanto situações que não envolvem falhas (switchover), como, por exemplo, manutenções programadas. ( ) Oferece três modos de proteção: disponibilidade máxima, desempenho máximo e proteção máxima.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é: