Pular para o conteúdo principal

Questão de Banco de Dados — MySQL — FGV 2026

Banco de DadosMySQL
Código
fg126143
Banca
FGV
Órgão
AL-GO
Ano
2026
Nível
Superior
Cargo
Analista Legislativo - Analista de Infraestrutura
Pedro, um experiente analista da ALEGO, atualizou o MySQL da versão 8.4 para a versão 9.0 Enterprise Edition com sucesso e sem nenhum tipo de erro ou intercorrências. Com relação aos novos recursos adicionados no MySQL 9.0.I. Essa versão inclui suporte para programas armazenados escritos em ShellScript, como o exemplo a seguir criado usando a CREATE FUNCTION:Imagem associada para resolução da questãoII. Essa versão agora suporta uma coluna do tipo vetor. Um vetor é uma estrutura de dados que consiste em uma lista de entradas (valores de ponto flutuante de 4 bytes) que podem ser expressas como um valor de string binária ou uma string formatada como lista.III. Essa versão agora não impõe especificações de chave estrangeira embutidas, que antes eram aceitas pelo analisador sintático. O MySQL 9.0 também aceita referências implícitas às colunas da chave primária de uma tabela filha.Está correto o que se afirma em
  1. AII e III, apenas.
  2. BI e III, apenas.
  3. CI e II, apenas.
  4. DII, apenas.
  5. EI, apenas.
Revelar gabarito e comentário

GabaritoD — II, apenas.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

MySQL 9.0: novos recursos e a pegadinha da versão

Gabarito: letra D. Apenas o item II está correto: o MySQL 9.0 introduziu o tipo de dado VECTOR, que armazena uma lista de valores de ponto flutuante de 4 bytes (float), utilizável em aplicações de busca por similaridade e IA. Os itens I e III descrevem recursos que não fazem parte do MySQL 9.0 — o item I inventa suporte a CREATE FUNCTION em ShellScript (o MySQL usa SQL/PSM, não ShellScript) e o item III inverte a realidade sobre chaves estrangeiras (o MySQL 9.0 passou a impor a verificação de FKs, não deixou de impor).

O MySQL 9.0 é uma versão Innovation da Oracle, lançada em julho de 2024, e trouxe um conjunto específico de novidades. Para acertar questões desse tipo, é essencial conhecer o que realmente mudou entre versões, pois a banca adora criar itens plausíveis, mas falsos, misturando recursos de outras versões ou simplesmente inventando funcionalidades. Vamos analisar cada item com profundidade para entender o que é verdade e o que é pegadinha.

O item II é o coração da questão e o único correto. O MySQL 9.0 adicionou o tipo de dados VECTOR, que é uma estrutura de dados que armazena uma lista de valores de ponto flutuante de 4 bytes (float). Esse tipo é fundamental para aplicações de busca por similaridade, como sistemas de recomendação, mecanismos de busca semântica e aplicações de inteligência artificial que trabalham com embeddings. A definição do item está precisa: um vetor é uma lista de entradas (valores float de 4 bytes) que pode ser expressa como uma string binária ou como uma string formatada como lista. Esse recurso foi uma das principais adições da versão 9.0, junto com o suporte a índices vetoriais para acelerar as buscas.

O item I é uma invenção. O MySQL não suporta, e nunca suportou, a criação de stored programs (procedures, funções, triggers) em ShellScript. A linguagem padrão para programas armazenados no MySQL é o SQL/PSM (SQL/Persistent Stored Modules), que é uma extensão procedural do SQL. O comando CREATE FUNCTION no MySQL aceita a linguagem SQL ou, em versões mais recentes, também suporta funções escritas em linguagens externas como C/C++ (via loadable functions), mas definitivamente não ShellScript. A banca criou um item falso que parece plausível para quem não conhece os detalhes da versão.

O item III também é falso e contém uma inversão perigosa. O MySQL 9.0 passou a impor a verificação de chaves estrangeiras (foreign keys), ou seja, a partir dessa versão, as especificações de FK embutidas em uma tabela são validadas pelo analisador sintático e pelo mecanismo de armazenamento. Antes, em versões anteriores, o MySQL aceitava a definição de FKs sem impor a restrição de integridade referencial de forma rigorosa (dependendo da storage engine). O item afirma exatamente o contrário: que a versão "não impõe especificações de chave estrangeira embutidas, que antes eram aceitas". Isso é uma inversão completa da realidade. Além disso, a segunda parte do item, sobre "referências implícitas às colunas da chave primária de uma tabela filha", não corresponde a nenhum recurso real do MySQL 9.0.

A pegadinha central desta questão é a inversão de sentido no item III e a invenção de recurso no item I. O candidato que estudou as notas de versão do MySQL 9.0 reconhece imediatamente o item II como verdadeiro e os outros dois como falsos. Mas quem não estudou pode cair na armadilha de achar que o item III é verdadeiro, pois a redação parece técnica e plausível. A dica é: quando a questão fala de "novos recursos" de uma versão específica, desconfie de itens que descrevem comportamentos contrários ao que seria lógico (como "não impor" uma restrição que deveria ser imposta) e de itens que usam tecnologias que não fazem sentido no contexto (como ShellScript em um banco de dados relacional).

Critério

Item I (ShellScript)

Item II (VECTOR)

Item III (FKs)

Recurso real no MySQL 9.0?

❌ Não — invenção da banca

✅ Sim — tipo de dado novo

❌ Não — inversão do que ocorreu

Comportamento descrito

CREATE FUNCTION em ShellScript

Lista de floats de 4 bytes (string binária ou lista)

"Não impõe" FKs embutidas

O que o MySQL 9.0 realmente faz

Só aceita SQL/PSM ou funções C/C++

Armazena embeddings para busca por similaridade/IA

Passa a impor verificação de FKs (não deixa de impor)

Veredito

❌ Incorreto

✅ Correto

❌ Incorreto

Item I — ❌ Incorreto

O item afirma que o MySQL 9.0 inclui suporte para programas armazenados escritos em ShellScript, com exemplo usando CREATE FUNCTION. Isso é falso. O MySQL não suporta ShellScript para stored programs. A linguagem padrão é SQL/PSM (uma extensão procedural do SQL). O comando CREATE FUNCTION no MySQL aceita a linguagem SQL ou, em versões mais recentes, também suporta funções escritas em linguagens externas como C/C++ (via loadable functions), mas definitivamente não ShellScript. A banca criou um item falso que parece plausível para quem não conhece os detalhes da versão.

Item II — ✅ Correto

O item descreve corretamente o novo tipo de dado VECTOR do MySQL 9.0. Um vetor é uma estrutura de dados que consiste em uma lista de entradas (valores de ponto flutuante de 4 bytes) que podem ser expressas como um valor de string binária ou uma string formatada como lista. Esse tipo é usado para armazenar embeddings e é fundamental para aplicações de busca por similaridade e IA. A definição está precisa e corresponde exatamente ao que foi adicionado na versão 9.0.

Item III — ❌ Incorreto

O item afirma que o MySQL 9.0 "não impõe especificações de chave estrangeira embutidas, que antes eram aceitas pelo analisador sintático". Isso é uma inversão completa da realidade. O MySQL 9.0 passou a impor a verificação de chaves estrangeiras, ou seja, a partir dessa versão, as especificações de FK embutidas em uma tabela são validadas pelo analisador sintático e pelo mecanismo de armazenamento. Antes, em versões anteriores, o MySQL aceitava a definição de FKs sem impor a restrição de integridade referencial de forma rigorosa (dependendo da storage engine). Além disso, a segunda parte do item, sobre "referências implícitas às colunas da chave primária de uma tabela filha", não corresponde a nenhum recurso real do MySQL 9.0.

NÃO CAIA NESSA!

A banca inverte o sentido do item III: o MySQL 9.0 passou a impor a verificação de chaves estrangeiras, não deixou de impor. E no item I, inventa um recurso (ShellScript) que não existe no MySQL. Fique atento a inversões de sentido e a tecnologias que não fazem sentido no contexto.

PEGA ESSA DICA!

Para questões sobre novas versões de SGBDs, estude as notas de versão oficiais. No MySQL 9.0, os destaques são: tipo VECTOR, suporte a índices vetoriais, e a imposição de verificação de chaves estrangeiras. Desconfie de itens que descrevem comportamentos contrários ao que seria lógico (como "não impor" uma restrição que deveria ser imposta) e de itens que usam tecnologias que não fazem sentido no contexto (como ShellScript em um banco de dados relacional).

Gabarito: letra D — apenas o item II está correto.

Link permanente: /questoes/fg126143