Questões de Concurso Público Prefeitura de Florianópolis - SC 2025 para Auditor Fiscal de Tributos Municipais - Tecnologia da Informação - 2º Dia

Foram encontradas 12 questões

Q3508307 Banco de Dados
Em teoria de bancos de dados relacionais, o processo de normalização visa reduzir a redundância e melhorar a integridade dos dados. Uma das formas normais estabelece um critério específico sobre a dependência dos atributos não-chave em relação à chave primária. Com base nesse contexto, assinale a alternativa que apresenta a forma normal que exige que todo atributo não-chave seja funcionalmente dependente da chave primária completa, e não apenas de uma parte dela:
Alternativas
Q3508311 Banco de Dados
Em um sistema de banco de dados relacional, que gerencia uma tabela com milhões de registros, é necessário otimizar consultas em uma coluna textual (VARCHAR(100)) que armazena nomes de produtos. A consulta mais comum utiliza o padrão LIKE 'prefixo%' para buscar produtos que começam com um prefixo específico, como SELECT * FROM produtos WHERE nome_produto LIKE 'eletr%';. Além disso, a tabela possui alta cardinalidade (muitos valores distintos) e é frequentemente atualizada com inserções e alterações. Considerando os diferentes tipos de índices disponíveis e suas características, assinale a alternativa que apresenta o tipo de índice mais eficiente para otimizar essas consultas, levando em conta tanto a performance de leitura quanto o impacto em operações de escrita: 
Alternativas
Q3508322 Banco de Dados
Para alterar o tipo de dados da coluna nome na tabela clientes de VARCHAR(50) para VARCHAR(100), garantindo que tentativas de inserir valores maiores que 100 caracteres resultem em erro, qual deve ser a instrução DDL? Assinale a alternativa correta: 
Alternativas
Q3508323 Banco de Dados
Em um sistema de banco de dados relacional que implementa o modelo ACID (Atomicidade, Consistência, Isolamento e Durabilidade) para garantir a integridade das transações, a propriedade de durabilidade assegura que, após uma transação ser confirmada (commit realizado), todas as suas alterações sejam permanentemente gravadas no banco de dados, mesmo em caso de falhas do sistema, como quedas de energia ou falhas de hardware. Considerando os componentes típicos de um sistema de gerenciamento de banco de dados (SGBD), assinale a alternativa que apresenta o componente responsável por garantir essa durabilidade:
Alternativas
Q3508324 Banco de Dados
Em um sistema de gerenciamento de banco de dados relacional compatível com SQL ANSI, você precisa selecionar dados de duas tabelas relacionadas: clientes (com colunas id_cliente, nome) e pedidos (com colunas id_pedido, id_cliente, data_pedido). O objetivo é obter uma lista completa de todos os clientes e todos os pedidos, mesmo que um cliente não tenha feito nenhum pedido ou que um pedido não esteja associado a um cliente existente (o que pode ocorrer devido a inconsistências nos dados). Para cada cliente, devem ser exibidos os pedidos associados (se houver), e para cada pedido, o cliente correspondente (se houver). Onde não houver correspondência, as colunas da tabela ausente devem exibir o valor NULL. Assinale a alternativa que atende corretamente o requisito descrito: 
Alternativas
Q3508327 Banco de Dados
Transações ACID em bancos de dados relacionais garantem propriedades fundamentais para manter a integridade dos dados em operações concorrentes. Um dos parâmetros mais importantes é o nível de isolamento (Isolation Level), que define como e quando os efeitos das alterações realizadas por uma transação são visíveis para outras. Considere uma aplicação bancária de grande porte, utilizando um sistema de gerenciamento de banco de dados (SGBD) com suporte ao nível de isolamento SERIALIZABLE. Nessa configuração, assinale a alternativa que descreve corretamente o comportamento pela escolha do nível de isolamento SERIALIZABLE: 
Alternativas
Q3508330 Banco de Dados
Em um sistema de gerenciamento de banco de dados relacional (SGBD), triggers são mecanismos que executam ações automáticas em resposta a eventos como inserções, atualizações ou exclusões em tabelas. Quando triggers são mal projetados, especialmente em cenários que envolvem múltiplas tabelas, eles podem resultar em "cascading triggers" ou "trigger storms", um comportamento em que um trigger dispara outro que, por sua vez, dispara mais triggers, potencialmente levando a loops infinitos, desempenho degradado ou dificuldades de depuração. Considere um SGBD que permite triggers aninhados sem limite estrito de profundidade. Avalie as seguintes afirmações sobre cenários de definição de triggers em um banco de dados relacional e assinale aquela que descreve um cenário de cascading triggers ou trigger storms:
Alternativas
Q3508335 Banco de Dados
Sistemas de banco de dados NoSQL do tipo chave-valor distribuído são frequentemente utilizados em ambientes que priorizam alta disponibilidade e escalabilidade horizontal. Para isso, muitos desses sistemas permitem que o desenvolvedor escolha entre diferentes modelos de consistência para equilibrar latência, disponibilidade e precisão dos dados. Considerando um cenário no qual a prioridade é minimizar a latência de leitura, mesmo que isso implique retornar dados possivelmente desatualizados, assinale a alternativa a seguir que apresenta o modelo de consistência mais adequado:
Alternativas
Q3508336 Banco de Dados

Em um sistema de e-commerce, foi criado um índice do tipo hash sobre a coluna preço da tabela produtos. Esse índice está sendo utilizado em consultas com filtros como:



SELECT * FROM produtos WHERE preco BETWEEN 100 AND 300;



I. Índices hash são ineficientes para consultas com operadores de intervalo, como BETWEEN, porque sua estrutura não mantém ordenação dos valores indexados.


II. A atualização de índices hash ocorre na reconstrução completa do índice sempre que um novo registro é inserido na tabela produtos em sistemas de banco de dados como PostgreSQL e MySQL.


III. A limitação dos índices hash em consultas de intervalo reside em sua restrição a campos numéricos, o que os tornam inutilizáveis para campos textuais ou data. 



É correto o que se afirma em:

Alternativas
Q3508337 Banco de Dados

Em um sistema de gerenciamento de banco de dados relacional que implementa os níveis de isolamento definidos pelo padrão ANSI SQL, cada nível oferece diferentes garantias contra anomalias de concorrência, como:



• Leitura suja (dirty read): leitura de dados ainda não confirmados.


• Leitura não repetível (non-repeatable read): dados lidos são alterados por outra transação entre duas leituras.


• Leitura fantasma (phantom read): novas linhas são inseridas por outras transações entre duas leituras.



Com base nesse contexto, avalie as afirmações a seguir:


I. O nível Read Uncommitted permite todas as três anomalias: leituras sujas, leituras não repetíveis e leituras fantasmas.


II. O nível Repeatable Read previne leituras sujas e leituras não repetíveis, mas não previne leituras fantasmas.


III. O nível Serializable evita todos os três fenômenos de concorrência, oferecendo o mais alto grau de isolamento conforme o padrão ANSI SQL.



É correto o que se afirma

Alternativas
Q3508339 Banco de Dados

Em uma aplicação bancária que utiliza um sistema de banco de dados relacional compatível com o padrão ANSI SQL, um desenvolvedor implementa a seguinte lógica para garantir a consistência ao realizar transferências entre contas:



BEGIN;


SELECT saldo FROM contas WHERE id = 101 FOR UPDATE;


UPDATE contas SET saldo = saldo - 500 WHERE id = 101;


SELECT saldo FROM contas WHERE id = 202 FOR UPDATE;


UPDATE contas SET saldo = saldo + 500 WHERE id = 202;


COMMIT;



Durante testes de carga, outra transação concorrente tenta acessar a conta de id 101 logo após o início da transação acima. Com base nesse contexto, avalie as afirmações a seguir:


I. A cláusula FOR UPDATE utilizada no SELECT bloqueia a linha lida até o fim da transação, impedindo que outras transações atualizem ou façam SELECT FOR UPDATE na mesma linha enquanto o bloqueio estiver ativo.


II. O uso de FOR UPDATE é eficaz para evitar condições de corrida (race conditions) ao modificar linhas críticas em um modelo de leitura-modificação-escrita.


III. A cláusula FOR UPDATE garante isolamento no nível SERIALIZABLE por si só, impedindo leitura fantasma e garantindo que nenhuma transação concorrente acesse qualquer dado relacionado.



É correto o que se afirma em: 

Alternativas
Q3508341 Banco de Dados
Em relação à modelagem de dados em bancos de NoSQL orientado a documentos, assinale a alternativa correta:
Alternativas
Respostas
1: B
2: A
3: E
4: D
5: D
6: D
7: C
8: D
9: A
10: A
11: C
12: D