No contexto do MySQL, analise as afirmativas a seguir a respeito da carga de dados (Bulk Data Loading) para tabelas InnoDB. I. No caso da existência de restrições (constraints) do tipo UNIQUE, é possível suspender temporariamente a verificação com o comando SET unique_checks=1. II. Tabelas InnoDB utilizam índices clusterizados, o que normalmente torna mais rápida a carga de dados dispostos na mesma ordem da chave primária (primary key). III. Na carga de arquivos muito grandes, a shell do MySQL oferece serviços de importação rápida por meio do utilitário util.importTable(). Está correto somente o que se afirma em:3
- A)II;
Errada, porque a afirmativa II e verdadeira, entao nao pode ser apenas a I.
- B)III;
Errada, porque a afirmativa III e verdadeira, mas ela nao pode ser a unica correta.
- C)I e II;
Errada, porque a I esta incorreta: para suspender a checagem de UNIQUE usa-se unique_checks=0, nao 1.
- D)I e III;
Errada, porque a I esta errada, embora a III esteja correta.
- E)II e III.
Certa, porque a II e a III estao corretas e a I esta errada.
Gabarito: E
No MySQL com InnoDB, a carga em massa pode ficar bem mais rápida quando voce ajuda o banco a evitar trabalho desnecessario. Um exemplo classico é quando os dados ja chegam ordenados pela primary key: como o InnoDB usa indice clusterizado, inserir nessa ordem costuma reduzir reorganizacoes internas e melhora o desempenho da importacao. Outro truque conhecido na carga de grandes volumes e suspender temporariamente algumas verificacoes, como as de UNIQUE. Aqui mora a pegadinha: o comando correto para desativar essa checagem e SET unique_checks=0, e nao 1. Com isso, o banco deixa de validar a unicidade a cada insercao e a operacao tende a ganhar velocidade. A afirmativa sobre o MySQL Shell tambem esta correta. O utilitario util.importTable() existe justamente para facilitar importacao rapida de grandes arquivos para tabelas, sendo uma ferramenta voltada para bulk loading. Em outras palavras: a banca misturou uma dica verdadeira, uma inversao de valor no comando e uma funcao real da shell. Por isso, o gabarito e E: somente as afirmativas II e III estao corretas. Esse tipo de questao cobra conhecimento pratico de MySQL/InnoDB, muito em linha com a documentacao oficial do MySQL sobre bulk loading, unique_checks e o MySQL Shell.