Pular para o conteúdo principal

Questão de Banco de Dados — Domínio de dados — FUNDATEC 2025

Banco de DadosDomínio de dados
Código
qg468590
Banca
FUNDATEC
Órgão
BRDE
Ano
2025
Nível
Superior
Cargo
Analista de Sistemas - Subárea Administração de Banco de Dados
Ao projetar a tabela Clientes para um sistema bancário, um administrador de banco de dados deve definir o tipo da coluna CPF. Considerando os princípios de integridade e performance, qual é a melhor escolha entre as alternativas abaixo?
  1. AVARCHAR(15)
  2. BNUMBER
  3. CVARCHAR(11)
  4. DCHAR(11)
  5. ECLOB
Revelar gabarito e comentário

GabaritoD — CHAR(11)

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Tipo de dado para CPF em Banco de Dados

Gabarito: letra D. O CPF possui exatamente 11 dígitos numéricos, sem variação de tamanho. O tipo CHAR(11) é o mais adequado por ser fixo (economiza espaço de armazenamento e melhora performance em comparação com VARCHAR) e garantir que todos os valores tenham o mesmo comprimento, respeitando o domínio do atributo.

A escolha do tipo de dado para o CPF deve considerar que se trata de um identificador de tamanho fixo (11 caracteres), composto apenas por dígitos, mas que não será utilizado em operações aritméticas. Assim, o tipo deve armazenar exatamente 11 caracteres, sem desperdício e com boa performance.

NÃO CAIA NESSA!

A banca espera que o candidato confunda VARCHAR(11) (variável) com CHAR(11) (fixo). Como o CPF tem tamanho fixo, o CHAR é mais eficiente em armazenamento e velocidade de acesso.

Tipo de dado para CPF
  • 1Características do CPF
    • 11 dígitos numéricos
    • Tamanho fixo
    • Identificador (sem cálculos)
  • 2Tipos candidatos
    • CHAR(11)
      • Tamanho fixo
      • Melhor performance
      • Garante domínio
    • VARCHAR(11)
      • Overhead de comprimento
      • Não garante fixidez
    • VARCHAR(15)
      • Espaço desperdiçado
      • Aceita letras
    • NUMBER
      • Perde zeros à esquerda
      • Arredondamentos
    • CLOB
      • Superdimensionado
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

VARCHAR(15) permite até 15 caracteres, mas armazena apenas os caracteres inseridos (armazenamento variável). Isso desperdiça espaço desnecessário (maior tamanho máximo) e não garante a fixidez do CPF, além de poder aceitar letras, violando o domínio esperado (apenas dígitos).

Alternativa B — ❌ Incorreta

NUMBER é próprio para valores numéricos que serão usados em cálculos. O CPF não é um valor numérico, mas um identificador; zeros à esquerda seriam perdidos, e o banco aplicaria arredondamentos desnecessários. Além disso, ocupa mais espaço que CHAR(11) e não reflete a natureza do dado.

Alternativa C — ❌ Inccorreta

VARCHAR(11) aceita até 11 caracteres com comprimento variável. Embora o tamanho máximo seja correto, o armazenamento variável adiciona overhead (bytes extras para indicar o comprimento real) e não garante que todos os registros tenham exatamente 11 caracteres, podendo haver inconsistências. É menos performático que CHAR(11) para consultas e indexação.

Alternativa D — ✅ Correta ⟵ GABARITO

CHAR(11) armazena exatamente 11 caracteres, preenchendo com espaços caso o valor inserido seja menor (o que não ocorre com CPFs válidos). É o tipo ideal para campos de tamanho fixo, pois oferece melhor desempenho em indexação e busca, além de garantir a integridade do domínio (apenas 11 dígitos).

Alternativa E — ❌ Incorreta

CLOB (Character Large Object) é usado para grandes quantidades de texto (como documentos ou descrições). Para um CPF de 11 caracteres, é totalmente inadequado: ocupa muito espaço, tem baixa performance em consultas e não é compatível com índices comuns.

Gabarito: letra D — CHAR(11) é a melhor escolha para a coluna CPF.

Link permanente: /questoes/qg468590