Questão 374510 - Linguagem SQL
Concurso: Banco Central do Brasil (BACEN) 2010 (2ª edição)
Cargo: Analista (Prova 2 - Específica - Área 1)
Banca: Fundação CESGRANRIO (CESGRANRIO)
Nível: Superior
Tecnologia da Informação Banco de Dados Linguagem SQL
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?
-
A.
Definição da chave primária na coluna CODIGO.
-
B.
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.
-
C.
Criação de um índice na coluna SITUACAO.
-
D.
Criação de um índice na coluna CODIGO_TAB2.
-
E.
Criação de um índice na coluna CODIGO.