No contexto do MySQL 8.x, considere as afirmativas a respeito da utilização de índices do tipo FULLTEXT exibidas a seguir. I. Índices FULLTEXT podem ser aplicados somente para tabelas MyISAM. II. Consultas baseadas em índices FULLTEXT devem usar a sintaxe MATCH(col1, col2, ...) AGAINST(expressão [modificador]). III. O comando ALTER TABLE não pode ser utilizado para a criação de índices FULLTEXT. Está correto somente o que se afirma em:
- A)I;
A alternativa A afirma que apenas a afirmativa I está correta, ou seja, que índices FULLTEXT seriam exclusivos de tabelas MyISAM. Isso não corresponde ao MySQL 8.x, porque o mecanismo InnoDB também suporta FULLTEXT, superando a antiga limitação histórica do MyISAM. Assim, a I traz uma regra desatualizada e incorreta sobre a abrangência do recurso.
- B)II;
A alternativa B sustenta que somente a afirmativa II está correta. No MySQL, consultas com índice FULLTEXT são feitas pela sintaxe MATCH(colunas) AGAINST(expressão [modificador]), inclusive com modos como BOOLEAN MODE ou QUERY EXPANSION, então a II descreve corretamente o mecanismo de busca. As outras afirmativas erram ao restringir indevidamente o FULLTEXT ao MyISAM e ao negar que ALTER TABLE possa criar esse tipo de índice.
- C)I e II;
A alternativa C diz que I e II estariam corretas. A II realmente está certa, porque a pesquisa FULLTEXT no MySQL é expressa por MATCH ... AGAINST, mas a I está errada, já que o InnoDB também aceita índices FULLTEXT no MySQL 8.x. Como a alternativa exige que as duas afirmativas sejam verdadeiras, a presença da I invalida essa opção.
- D)I e III;
A alternativa D afirma que I e III estariam corretas. Ocorre que a I é falsa, porque FULLTEXT não é exclusivo do MyISAM, e a III também é falsa, pois o MySQL permite criar índice FULLTEXT por ALTER TABLE, usando, por exemplo, ADD FULLTEXT. Portanto, o conteúdo técnico das duas afirmativas não se sustenta.
- E)II e III.
A alternativa E diz que II e III estão corretas. A II está de acordo com a forma de consulta FULLTEXT no MySQL, mas a III erra ao afirmar que ALTER TABLE não pode ser usado para criar esse índice, já que esse comando admite ADD FULLTEXT. Assim, a opção falha porque mistura uma afirmativa verdadeira com outra que contraria a funcionalidade do banco.
Gabarito: B
Índice FULLTEXT é aquele recurso do MySQL feito para busca textual, especialmente em colunas com muito texto, como artigos, descrições e comentários. Ele permite pesquisar palavras e até avaliar relevância, indo além do simples “igual” ou “contém”. Em MySQL 8.x, esse tipo de índice não ficou preso ao MyISAM: ele também pode ser usado em InnoDB, que é o mecanismo mais comum hoje. A consulta com FULLTEXT usa, sim, a estrutura MATCH(col1, col2, ...) AGAINST(expressão [modificador]). Essa é a forma padrão para o MySQL aproveitar o índice textual. Ou seja, a afirmativa II está correta e é exatamente por isso que o gabarito é a letra B. Já a afirmativa I está errada porque o FULLTEXT não é exclusivo do MyISAM. E a III também está errada porque o comando ALTER TABLE pode criar índice FULLTEXT, por exemplo com ADD FULLTEXT. Em resumo: no MySQL moderno, FULLTEXT não é “coisa do passado”, nem fica preso a um único mecanismo de armazenamento.