Acerca do SQL Server, julgue o item subsequente.O comando Tr...
Acerca do SQL Server, julgue o item subsequente.
O comando Transact-SQL chamado CREATE INDEX é usado para criar índices em uma tabela. Ao se executar esse comando, UNIQUE informa não ser possível que duas linhas tenham o mesmo valor de índice. Quando há um índice UNIQUE definido, os comandos UPDATE e INSERT, que gerariam linhas com valores de índice duplicados, passam a ser revertidos (rollback). O dono de uma tabela pode criar índices apenas quando essa tabela não tiver dados armazenados.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Vamos analisar a questão sobre o comando Transact-SQL CREATE INDEX no SQL Server e entender por que a alternativa correta é a indicada.
Alternativa correta: E (errado)
O comando Transact-SQL CREATE INDEX é realmente utilizado para criar índices em uma tabela no SQL Server. Um índice pode melhorar significativamente o desempenho das consultas ao banco de dados, permitindo acesso mais rápido aos dados.
Vamos analisar em detalhes cada trecho da afirmação dada na questão para entender o motivo pelo qual ela está incorreta:
1. "Ao se executar esse comando, UNIQUE informa não ser possível que duas linhas tenham o mesmo valor de índice."
Correto. Quando um índice é criado com a palavra-chave UNIQUE, ele garante que todos os valores no índice sejam distintos. Isso significa que não é permitido valor duplicado no campo que está sendo indexado.
2. "Quando há um índice UNIQUE definido, os comandos UPDATE e INSERT, que gerariam linhas com valores de índice duplicados, passam a ser revertidos (rollback).
Correto. Se uma operação INSERT ou UPDATE tentar inserir um valor duplicado em uma coluna que possui um índice UNIQUE, essa operação falhará e será revertida, garantindo a integridade dos dados.
3. "O dono de uma tabela pode criar índices apenas quando essa tabela não tiver dados armazenados."
Incorreto. Este é o ponto chave que torna a questão errada. No SQL Server, é possível criar índices em tabelas que já possuem dados armazenados. Não há necessidade de a tabela estar vazia. A criação de índices em tabelas com dados pode levar mais tempo devido à necessidade de reorganizar e ordenar os dados existentes, mas é totalmente viável e comum no uso prático.
Portanto, a indicação de que índices só podem ser criados em tabelas vazias está equivocada, tornando a assertiva incorreta no contexto do SQL Server.
Recapitulando:
A questão está errada porque, embora corretamente mencione o uso de índices UNIQUE e o comportamento dos comandos UPDATE e INSERT com relação a esses índices, ela incorretamente afirma que índices só podem ser criados em tabelas sem dados, o que não é verdadeiro no SQL Server.
Espero que essa explicação tenha ajudado a esclarecer por que a alternativa correta é a indicada. Se houver mais dúvidas ou precisar de mais informações, estou à disposição!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo