Para criar o cadastro dos clientes da sua empresa de TI, Paulo implementou a tabela CLIENTE e definiu o atributo CLIENTE_ID para identificar os clientes com um número sequencial único. O recurso de banco de dados que Paulo deve usar para gerar automaticamente um número único quando novos registros são inseridos na tabela CLIENTE é o:
- A)index;
Index melhora a busca e a ordenação dos dados, mas não gera valores automáticos para novos registros.
- B)unique key;
Unique key garante unicidade dos valores, porém não cria números sequenciais por conta própria.
- C)constraints;
Constraints são regras de integridade, não um mecanismo de autogeração de identificadores.
- D)primary key;
Primary key identifica unicamente a linha, mas a geração automática do valor depende de outro recurso do SGBD.
- E)auto increment.
Auto increment é o recurso usado para o banco gerar automaticamente um número único a cada novo registro.
Gabarito: E
Quando a questão fala em gerar automaticamente um número único para novos registros, ela está apontando para um recurso de auto numeração do banco de dados. Em muitos SGBDs isso aparece como auto increment, identity ou serial, dependendo do fabricante, mas a ideia é sempre a mesma: o próprio banco cria o valor do identificador sem você precisar digitá-lo manualmente. Isso é muito usado em chaves primárias, porque cada cliente precisa de um código exclusivo e sequencial, o que facilita a identificação e evita conflitos entre registros. Aqui, o atributo CLIENTE_ID foi pensado justamente para esse papel de identificador automático. Por isso, o gabarito é a letra E. As outras opções até parecem “coisas de banco de dados”, mas nenhuma delas tem a função de gerar sozinha um novo número ao inserir uma linha na tabela. Em termos de doutrina de banco de dados, esse comportamento é associado a campos de chave surrogate e mecanismos de autoincremento do SGBD. A nomenclatura exata varia entre sistemas, mas na linguagem de prova da FGV a resposta esperada é auto increment.