QuestLab Plataforma Inteligente de Questões
Banco público de questões

Questões para Concursos

Pesquise questões reais por disciplina, assunto, tópico, banca, órgão, cargo, ano e modalidade.

Questões por banca

29 bancas disponíveis. Clique para visualizar todas.

Encontre as questões que procura
Limpar filtros
69 questões encontradas

Assinale a opção correta, a respeito de serializabilidade, um dos critérios fundamentais utilizados no controle de concorrência em transações.

A Esse critério é ignorado em sistemas que utilizam controle de concorrência baseado em bloqueios.
B Um escalonamento com conflitos de leitura sempre será não serializável.
C Um escalonamento é considerado serializável apenas se as transações forem executadas de forma completamente sequencial.
D O referido critério baseia-se na equivalência entre a execução concorrente e a execução sequencial de transações.
E Escalonamentos serializáveis não garantem a integridade dos dados em bancos de dados transacionais.

Os métodos de acesso utilizados em bancos de dados têm impacto direto no desempenho das consultas, destacando-se, entre os principais, as estruturas baseadas em árvores e o método de hashing . A esse respeito, assinale a opção correta.

A O uso de índices sempre impede a realização de varredura completa da tabela ( full scan ).
B Hashing e árvores B+ têm desempenho equivalente em qualquer tipo de consulta.
C O método de hashing é ideal para consultas que exigem ordenação dos resultados.
D Árvores B+ são inadequadas para realizar buscas sequenciais eficientes em grandes volumes de dados.
E Índices baseados em árvores B+ permitem acesso eficiente tanto para buscas pontuais quanto para intervalos ordenados.

Considerando que a modelagem conceitual com o modelo entidade-relacionamento é uma etapa essencial no projeto de bancos de dados relacionais, assinale a opção correta.

A A modelagem conceitual descreve como os dados serão fisicamente armazenados em disco.
B Uma entidade fraca é aquela que possui chave primária composta por mais de um atributo.
C A generalização permite que se abstraiam características comuns de entidades em uma entidade-pai mais genérica.
D Um relacionamento binário ocorre entre três ou mais entidades ao mesmo tempo.
E A agregação é usada para representar atributos multivalorados.

Em sistemas de gerenciamento de banco de dados, o controle de concorrência tem como objetivo garantir que múltiplas transações executadas simultaneamente não comprometam a integridade dos dados. Um dos principais protocolos utilizados nesses sistemas é o 2PL ( two-phase locking ). Acerca desse protocolo, assinale a opção correta.

A O protocolo 2PL estrito exige que todos os bloqueios sejam liberados após a fase de crescimento, antes do commit .
B O protocolo 2PL estrito garante serializabilidade ao manter os bloqueios até o final da transação.
C O 2PL básico impede completamente a ocorrência de interbloqueios ( deadlocks ).
D O protocolo 2PL não se aplica a bancos de dados que utilizam transações distribuídas.
E O uso de bloqueios pessimistas elimina a necessidade de controle de concorrência.

Assinale a opção correta acerca do protocolo 2PC ( two-phase commit ).

A O protocolo 2PC garante a atomicidade em transações distribuídas ao coordenar commit ou abort entre participantes.
B O referido protocolo elimina totalmente o risco de bloqueio em caso de falha do coordenador.
C Esse protocolo é utilizado apenas em sistemas baseados em bancos de dados relacionais centralizados.
D O uso desse protocolo impede a necessidade de logs nos participantes das transações.
E O protocolo 2PC exige que todos os participantes liberem seus bloqueios antes da fase de commit .

Para a garantia da consistência e da confiabilidade dos dados em um sistema de gerenciamento de banco de dados, as transações devem atender às propriedades ACID. Assim, na situação em que uma única transação envolva, simultaneamente, o débito de R$ 100 na conta corrente e o crédito do mesmo valor na conta poupança de um mesmo correntista, caso ocorra falha de sistema antes da confirmação ( commit ) da transação, a garantia de que nenhum débito/crédito será efetivado é assegurada

A pelos bloqueios.
B pela atomicidade.
C pela consistência.
D pela durabilidade.
E E pelo isolamento.

Em um ambiente de banco de dados de um sistema bancário, duas transações são executadas simultaneamente: uma delas adquire bloqueio exclusivo em A e, em seguida, em B; a outra adquire bloqueio exclusivo em B e, em seguida, em A. Ambas só liberam todos os bloqueios ao término da execução. Nesse cenário, é mais provável que ocorra

A starvation da transação mais lenta, sendo a melhor prevenção a implementação de um escalonador baseado em prioridades.
B violação de isolamento, sendo a melhor prevenção a elevação do nível de isolamento para serializable .
C detecção de deadlock por timeout , sendo a melhor prevenção a imposição de limites de tempo para a aquisição de bloqueios.
D deadlock , sendo a melhor prevenção a imposição de uma ordenação total aos recursos, exigindo-se que todas as transações adquiram bloqueios em uma mesma sequência predefinida.
E condição de corrida ( race condition ), sendo a melhor prevenção a utilização de bloqueios compartilhados em vez de exclusivos.

Assinale a opção em que são corretamente apresentados os comandos necessários para a criação, em um banco de dados relacional, da tabela de nome funcionários , contendo as colunas: id de inteiros e chave primária; nome com VARCHAR(100) , obrigatório; sa la rio com DECIMAL(10,2); e data_admissao de DATE .

A CREATE funcionarios (id INTEGER PRIMARY KEY, nome VARCHAR(100) NOT NULL, salario DECIMAL(10,2), data_admissao DATE);
B INSERT TABLE funcionarios (id INTEGER PRIMARY KEY, nome VARCHAR(100) NOT NULL, salario DECIMAL(10,2), data_admissao DATE);
C CREATE TABLE funcionarios (id INTEGER PRIMARY KEY, nome VARCHAR(100) NOT NULL, salario DECIMAL(10,2), data_admissao DATE);
D DEFINE TABLE funcionarios (id INTEGER PRIMARY KEY, nome VARCHAR(100) NOT NULL, salario DECIMAL(10,2), data_admissao DATE);
E CREATE TABLE funcionarios (id INTEGER KEY, nome VARCHAR(100) REQUIRED, salario DECIMAL(10,2), data_admissao DATE);

Assinale a opção em que é corretamente apresentado o comando DDL que permite criar a tabela de nome itens_pedido e relacionar cada pedido a seus produtos, de modo que: pedido_id e produto_id sejam chaves estrangeiras que referenciem a tabela; quantidade seja um inteiro maior que zero; preco_unitario seja um decimal maior que zero; e a combinação ( pedido_id, produto_id ) seja a chave primária, garantindo unicidade e não null .

A CREATE TABLE itens_pedido ( pedido_id INTEGER REFERENCES pedidos(id), produto_id INTEGER REFERENCES produtos(id), quantidade INTEGER CHECK (quantidade > 0), preco_unitario DECIMAL(10,2)CHECK (preco_unitario > 0) , UNIQUE (pedido_id, produto_id) );
B CREATE itens_pedido ( pedido_id INTEGER REFERENCES pedidos(id), produto_id INTEGER REFERENCES produtos(id), quantidade INTEGER CHECK quantidade > 0, preco_unitario DECIMAL(10,2)CHECK preco_unitario > 0, PRIMARY KEY (pedido_id, produto_id ) );
C CREATE TABLE itens_pedido ( pedido_id INTEGER, produto_id INTEGER, quantidade INTEGER CHECK (quantidade > 0), preco_unitario DECIMAL(10,2)CHECK (preco_unitario > 0), FOREIGN KEY (pedido_id) pedidos(id), FOREIGN KEY (produto_id) produtos(id), PRIMARY KEY (pedido_id, produto_id) );
D CREATE TABLE itens_pedido ( pedido_id INTEGER REFERENCES pedidos(id), produto_id INTEGER REFERENCES produtos(id), quantidade INTEGER CHECK (quantidade > 0), preco_unitario DECIMAL(10,2)CHECK (preco_unitario > 0), PRIMARY KEY (pedido_id, produto_id) );
E CREATE TABLE itens_pedido ( item_id INTEGER PRIMARY KEY, pedido_id INTEGER REFERENCES pedidos(id), produto_id INTEGER REFERENCES produtos(id), quantidade INTEGER CHECK (quantidade > 0), preco_unitario DECIMAL(10,2)CHECK (preco_unitario > 0), UNIQUE (pedido_id, produto_id) );

Em um sistema de biblioteca, existem três tabelas com as seguintes colunas. • livros : com um identificador único ( id ) para cada livro, o título do livro, um campo autor_id , que indica o autor que cadastrou o livro, um campo categoria_id , que indica a que categoria o livro pertence, e um campo booleano disponível para indicar se o livro está disponível para empréstimo ( TRUE ) ou não ( FALSE ). • autores : com um identificador único (id) para cada autor, e o nome do autor. • categorias : com um identificador único (id) para cada categoria, e o nome da categoria. Há uma relação implícita entre livros.autor_id e e e ntr e livros.categoria_id e categorias.id, de modo que, para um livro válido, deve existir um autor correspondente e uma categoria correspondente. A partir das informações precedentes, assinale a opção em que é corretamente apresentada a consulta SQL que permite a obtenção apenas dos livros cujo campo disponivel seja TRUE , desde que já existam registros correspondentes em autores e categorias, e, além disso, filtre somente os livros cuja categoria tenha o nome Ficção Científica, e apresente como resultado exatamente três colunas: título do livro, nome do autor e nome da categoria.

A SELECT l.titulo, a.nome AS autor, c.nome AS categoria FROM livros AS l INNER JOIN autores AS a ON l.autor_id = a.id INNER JOIN categorias AS c ON l.categoria_id = c.id WHERE l.disponivel = TRUE AND c.nome = 'Ficção Científica';
B SELECT l. titulo, a.nome, c.nome FROM livros l LEFT JOIN autores a ON l.autor_id = a.id LEFT JOIN categorias c ON l.categoria_id = c.id WHERE l.disponivel = TRUE AND c.nome = 'Ficção Científica';
C SELECT l.titulo, a.nome, c.nome FROM livros l, autores a, categorias c WHERE l.autor_id = a.id AND l.categoria_id = c.id AND l.disponivel = TRUE AND c.nome LIKE '%Ficção Científica%';
D SELECT l.titulo, a.nome, c.nome FROM livros AS l INNER JOIN autores AS a ON l.autor_id = a.id INNER JOIN categorias AS c ON l.categoria_id = c.id WHERE l.disponivel = 'S' AND c.nome = 'Ficção Científica';
E SELECT l.titulo, a.nome AS autor, c.nome AS categoria FROM livros AS l INNER JOIN autores AS a ON l.autor_id = a.id INNER JOIN categorias AS c ON l.categoria_id = c.id WHERE l.disponivel = TRUE AND c.nome = 'Ficção Científica';