1
resposta

Ao usar o char(11) no cpf, eu ainda consigo inserir valores menores que 11 caracteres

Ao usar o char(11) no cpf, eu ainda consigo inserir valores menores que 11 caracteres, como definir que não pode ser menos ou mais caracteres que 11?

1 resposta

Oii, Leonardo! Como você está?

Para garantir que o CPF tenha exatamente 11 caracteres no SQL Server, podemos pensar em algumas abordagens. Seguem os exemplos:

A primeira sugestão é utilizar o CHECK Constraint na coluna para garantir que o valor inserido tenha exatamente 11 caracteres. Até a versão 8.0.16, o MySQL não suportava diretamente a criação de restrições de verificação (CHECK constraints) que sejam aplicadas no momento da inserção ou atualização de dados, mas a partir dessa versão o suporte foi adicionado.

Outra alternativa é usar o Trigger, que verifica o tamanho do CPF antes de inserir ou atualizar a tabela.

Espero que as sugestões te ajude. Não esqueça de estudar sobre cada uma para entender qual melhor se encaixa ao seu projeto.

Qualquer dúvida, conte conosco.

Bons estudos, Leonardo!