Utilizando-se o comando apresentado a seguir, foi criada a tabela TAB1, em uma base de dados, armazenada em um Sistema Gerenciador de Bancos de Dados (SGBD) relacional. Logo após a criação da tabela, ela foi carregada com 5 milhões de linhas, a partir de dados contidos em um arquivo texto.
CR
Não existem restrições de integridade na tabela, mas sabe-se que o valor da coluna CODIGO não se repete em diferentes linhas. Sabe-se, também, que existem cerca de 20 mil valores distintos para CODIGO_TAB2, sendo que as quantidades de ocorrências de cada um de tais valores na tabela são aproximadamente iguais. De forma análoga, existem 5 valores distintos para a coluna SITUACAO, e as quantidades de ocorrências de cada um desses valores na tabela também são aproximadamente iguais.
Visando a atualizar os valores da coluna SITUACAO, um usuário irá executar repetidas vezes comando similar ao apresentado a seguir. Para cada execução do comando, o usuário substitui os valores das variáveis @VALOR_SITUACAO e @CODIGO por valores adequados. No entanto, a execução de tal comando de atualização está tendo desempenho insatisfatório.
Nesse contexto, qual a ação que pode gerar maior ganho de desempenho na execução do comando?
Definição da chave primária na coluna CODIGO.
Definição de constraints do tipo CHECK, nas colunas SITUACAO e CODIGO_TAB2, de forma a limitar os valores distintos que essas colunas podem conter.
Criação de um índice na coluna SITUACAO.
Criação de um índice na coluna CODIGO_TAB2.
Criação de um índice na coluna CODIGO.
{TITLE}
{CONTENT}
{TITLE}
Aguarde, enviando solicitação...