Questões de Concurso Sobre banco de dados

Foram encontradas 15.698 questões

Q918827 Banco de Dados

Considere as afirmações abaixo sobre as vantagens de procedimentos armazenados (stored procedures) em Sistemas de Gerência de Banco de Dados (SGBDs).


I - Desempenho: a maioria dos SGBDs compilam os procedimentos armazenados, gerando uma representação interna que pode ser executada de forma bastante eficiente no SGBD, com desempenho bem melhor do que o de comandos equivalentes invocados a partir de um programa de aplicação, por exemplo, através de uma API (Application Programing Interface).

II - Reusabilidade: um procedimento armazenado definido para uma função específica pode ser invocado de múltiplas formas, por exemplo, por diferentes aplicações, procedimentos armazenados ou gatilhos.

III - Segurança: um procedimento armazenado precisa ser testado e homologado pelo DBA (administrador do banco de dados), garantindo assim que não irá gerar erros de execução.

IV - Redução do tráfego de rede: em uma configuração cliente/servidor, invocar um procedimento armazenado a partir de uma aplicação no cliente, recebendo os resultados, gera bem menos tráfego do que invocar um conjunto equivalente de comandos SQL a partir de uma lógica controlada em um programa de aplicação.


Quais estão corretas?

Alternativas
Q918826 Banco de Dados

Observe as tabelas FUNCIONARIOS, PROJETOS e PARTICIPACOES definidas abaixo, usando SQL, que representam funcionários e a participação destes em projetos.


Create table PROJETOS

(codp char(2) not null primary key,

cliente varchar(100) not null,

orcamento numeric(15,2) not null,

pais char(2) not null);


create table FUNCIONARIOS

(matr char(2) not null primary key,

nomef varchar(100) not null,

salario numeric(8,2) not null,

pais char(2) not null);


create table PARTICIPACOES

(codp char(2) not null,

matr char(2) not null,

horas integer not null,

primary key (codp, matr),

foreign key (codp) references PROJETOS,

foreign key (matr) references FUNCIONARIOS);


Considere a consulta SQL abaixo.


Imagem associada para resolução da questão


O que essa consulta SQL recupera?

Alternativas
Q918824 Banco de Dados

Observe as tabelas FUNCIONARIOS, PROJETOS e PARTICIPACOES definidas abaixo, usando SQL, que representam funcionários e a participação destes em projetos.


create table PROJETOS

(codp char(2) not null primary key,

cliente varchar(100) not null,

orcamento numeric(15,2) not null,

pais char(2) not null);


create table FUNCIONARIOS

(matr char(2) not null primary key,

nomef varchar(100) not null,

salario numeric(8,2) not null,

pais char(2) not null);


create table PARTICIPACOES

(codp char(2) not null,

matr char(2) not null,

horas integer not null,

primary key (codp, matr),

foreign key (codp) references PROJETOS,

foreign key (matr) references FUNCIONARIOS);


Observe as instâncias destas tabelas.


Imagem associada para resolução da questão


Considere a consulta SQL abaixo, que segue o padrão SQL2.


SELECT cliente

FROM projetos natural left join participacoes natural join funcionarios

GROUP BY codp, cliente

HAVING count(*) > 1;


A consulta SQL acima recuperará

Alternativas
Q918242 Banco de Dados
Para criar uma consulta que pesquise na tabela Trabalhadores de um banco de dados aberto e em condições ideais todos os nomes e telefones de trabalhadores cujos nomes sejam Sofia ou Sophia, um Analista de Sistemas deve utilizar a instrução PL/SQL SELECT nome, telefone FROM Trabalhadores WHERE
Alternativas
Q917537 Banco de Dados
A execução apresentada do script deflagrará a execução da trigger trg_01, construída em PL/SQL, que é demonstrada a seguir.
update tabela_a set coluna_a = ‘X’ where coluna_b = ‘Y’;
create trigger trg_01 before delete on tabela_a begin insert into tabela_b values (‘W’, ‘K’); end;
Alternativas
Q917536 Banco de Dados
Se, na execução da procedure em PL/SQL apresentada a seguir, o terceiro parâmetro for nulo, apenas a tabela FUNC será manipulada.
create procedure proc_01 (p_matricula in number, p_perc in number, p_promocao in varchar2) as declare n_salario number; begin update func set salario = salario * 1 + (p_rec / 100) where matricula = p_matricula; if p_promocao is not null then select salario into n_salario from func where matricula = p_matricula; insert into historico values (p_matricula, sysdate, n_salario); end if; commit; end;
Alternativas
Q917535 Banco de Dados

Considerando as tabelas


Imagem associada para resolução da questão
após a execução do comando SQL


insert into acessos (

select 2, a1.cod_acesso

from acessos a1, usuarios u

where a1.cod_usuario = u.cod_usuario

and u.usuario = ‘J’

and not exists (select 1 from acessos a2 where a1.cod_acesso = a2.cod_acesso));


a tabela ACESSOS terá o seguinte conteúdo:


Imagem associada para resolução da questão

Alternativas
Q917534 Banco de Dados
Os comandos commit e rollback são utilizados, respectivamente, para confirmar e desfazer instruções do tipo DML e DDL em um banco de dados.
Alternativas
Q917533 Banco de Dados
Ferramentas OLAP funcionam sobre dados multidimensionais, caracterizados por atributos de dimensão e medida. Devido à sua grande capacidade de cruzamento de dados, é possível utilizar essas ferramentas para dar suporte a decisões, ainda que as bases de dados possuam pouco volume de dados.
Alternativas
Q917532 Banco de Dados
Um sistema de banco de dados distribuído consiste em uma coleção de sites, cada um mantendo um sistema de banco de dados local. Cada site é capaz de processar transações locais, mas não há a possibilidade de participar de transações que acessem dados em vários outros.
Alternativas
Q917531 Banco de Dados
Em bancos de dados relacionais, a execução simultânea de transações melhora o desempenho do sistema, mas pode não preservar a consistência dos dados, embora se tenha que uma solução para garantir a consistência do banco de dados é a execução serial de transações.
Alternativas
Q917530 Banco de Dados
Tomando como base o modelo relacional de dados, a modelagem de dados, na abordagem lógica, deve contemplar todas as formas normais; já o modelo físico de dados pode dispensar algumas formas normais com o objetivo de incrementar o desempenho nas operações de consulta a dados.
Alternativas
Q917389 Banco de Dados
Considere a seguinte instrução do Oracle 11G.
SERT SERVEROUTPUT ON DECLARE e_codigo_invalido EXCEPTION; v_cod_motorista MOTORISTA.num_pessos_pf%type := cod_motorista; BEGIN UPDATE MOTORISTA SET data_validade_habilitacao = ‘&nova_data_habilitacao’ WHERE num_pessoa_pf = v_cod_motorista; IF SQL%NOTFOUND THEN RAISE e_codigo_invalido; ENDIF; EXCEPTION WHEN e_codigo_invalido THEN DMS_OUTPUT.PUT_LINE(‘O motorista não está cadastrado’); END;
Para atualizar a data de validade da carteira de habilitação de um motorista, a instrução acima implementa uma exceção
Alternativas
Q917388 Banco de Dados
Considere as afirmações abaixo sobre restrições de integridade em Banco de Dados.
I - Restrições de domínio especificam o conjunto de valores possíveis associados a um atributo. Tais regras podem também proibir o uso de valores nulos para atributos. II - Restrições de integridade referencial asseguram que um valor que apareça em uma relação para um dado conjunto de atributos também apareça para um certo conjunto de atributos em outra relação. III - Dependências funcionais são a generalização de chave de dependência. Elas exigem que os valores de um certo conjunto de atributos determine, de modo unívoco, os valores para outro conjunto de atributos.
Quais estão corretas?
Alternativas
Q917387 Banco de Dados
Sobre recuperação de banco de dados, é correto afirmar que:
Alternativas
Q917386 Banco de Dados
Considere a seguinte instrução do Oracle 11G.
GRANT SELECT ON scott.emp TO primeiro;
A instrução acima cria um usuário com o privilégio de
Alternativas
Q917384 Banco de Dados
Suponha que uma transação T transfira 400 reais da conta A para a conta B. Antes da execução da transação T, os valores das contas bancárias A e B eram 1.000 e 2.000 reais, respectivamente. Imagine que T retire 500 reais da conta A e que haja falha antes de transferir para a conta B. Agora, os valores das contas A e B refletidos no banco de dados são 600 e 2.000 reais, respectivamente. Qual propriedade de processamento de transações NÃO foi garantida?
Alternativas
Q917383 Banco de Dados
Sobre indexação de arquivos, é correto afirmar que:
Alternativas
Q917382 Banco de Dados
Sobre junções em consultas SQL, é correto afirmar que:
Alternativas
Q917381 Banco de Dados
Observe a seguinte consulta SQL.
1. SELECT nome_pessoa 2. FROM PESSOA_FISICA 3. WHERE data_nascimento = (SELECT data_nascimento 4.   FROM PESSOA_FISICA 5.   WHERE nome_pessoa = ‘João’)
Sobre essa consulta, considere as afirmações abaixo.
I - A consulta retorna nomes de pessoas físicas que fazem aniversário no mesmo dia que João. II - A subconsulta que inicia na linha 3 será realizada antes, para que o seu resultado seja utilizado na comparação data_nascimento = (SELECT ...). Em seguida, será realizada a consulta principal, que inicia na linha 1. III - A subconsulta que inicia na linha 3 poderá ter mais de uma linha com resultado.
Quais estão corretas?
Alternativas
Respostas
7561: C
7562: C
7563: B
7564: A
7565: E
7566: C
7567: C
7568: E
7569: E
7570: E
7571: C
7572: C
7573: D
7574: E
7575: B
7576: E
7577: A
7578: C
7579: A
7580: D