Questão nº 44
Questão de Tecnologia da Informação · FGV STN 2024 (nº 44)
Numa instalação SQL Server, o administrador do banco de dados precisa identificar as tabelas do banco de dados corporativo da empresa que sofreram alterações nas suas definições num dado intervalo de tempo.
Assinale o comando que produz corretamente essas informações.
- Aselect name, type_desc, modify_date
from model.information
where type = 'SYSTEM'
and modify_date
between '01/01/2024' and '31/01/24' - Bselect name, type_desc, modify_date
from sys.information
where modify_date
between '01/01/2024' and '31/01/2024' - Cselect name, type_desc, modify_date
from view.tables
where type = 'USER'
and modify_date
between '01/01/2024' and '31/01/24' - Dselect name, type_desc, modify_date
from sys.tables
where type = 'U'
and modify_date
between '01/01/2024' and '31/01/24' (alternativa correta) - Eselect name, type_desc, modify_date
from DICTIONARY
where type = 'SYSTEM'
and modify_date
between '01/01/2024' and '31/01/24'
Resposta comentada
Gabarito Alternativa D
Para identificar tabelas que tiveram suas definições alteradas em um período, o SQL Server oferece visões de catálogo do sistema que armazenam metadados (dados sobre os dados). A visão sys.tables é a principal para obter informações sobre as tabelas criadas pelos usuários, incluindo a data da última modificação de sua estrutura.
- (A) Incorreta:
model.informationnão é uma visão de catálogo padrão para tabelas de usuário.type = 'SYSTEM'buscaria objetos do sistema, não tabelas de usuário. - (B) Incorreta:
sys.informationnão é uma visão de catálogo padrão do SQL Server para tabelas. A visão correta no esquemasysésys.tables. - (C) Incorreta:
view.tablesnão é uma visão de catálogo padrão. Além disso, o tipo para tabelas de usuário emsys.tablesé'U', não'USER'. - (D) Correta: O comando
select name, type_desc, modify_date from sys.tablesacessa a visão de catálogosys.tables, que contém metadados sobre todas as tabelas do banco de dados. A condiçãowhere type = 'U'filtra especificamente para tabelas definidas pelo usuário (onde 'U' significa User-defined table). A condiçãoand modify_date between '01/01/2024' and '31/01/24'filtra as tabelas que tiveram suas definições alteradas dentro do intervalo de datas especificado, utilizando a colunamodify_dateque registra a última alteração de esquema. - (E) Incorreta:
DICTIONARYnão é uma visão de catálogo padrão no SQL Server.type = 'SYSTEM'buscaria objetos do sistema, não tabelas de usuário.
Fonte: FGV STN 2024 Auditor Federal de Finanças e Controle - Tecnologia da Informação (Operação e Infraestrutura) (Caderno Tipo 1). Reproduzida para fins de estudo.