Quando criamos a coluna CPF especificamos que ela teria 11 dígitos, CHAR(11), porém nos dados da tabelas existem CPFs com 10 dígitos, o CHAR (11) então só põe no máximo 11 ? Se sim então qual a diferença para o VARCHAR () ?
Quando criamos a coluna CPF especificamos que ela teria 11 dígitos, CHAR(11), porém nos dados da tabelas existem CPFs com 10 dígitos, o CHAR (11) então só põe no máximo 11 ? Se sim então qual a diferença para o VARCHAR () ?
Oi Marcus, tudo bem?
O tipo de dados CHAR ocupa um tamanho fixo de espaço no banco de dados, neste caso, 11 caracateres - CHAR(11) - então, se armazenar um dado com apenas 10 posições, o campo será preenchido com um espaço em branco, ocupando o total de 11 posições.
No caso do VARCHAR, como o nome sugere ele é variável até o tamanho máximo, por exemplo um VARCHAR(11) , vai armazenar até 11 caracteres, e não irá preencher com espaços em branco, se você inserir um valor com apenas 10 caracteres.
Espero ter ajudado.
=)