MySQL - Por que usar Unsigned ou qual a diferença entre unsigned e signed
Unsigned é uma atribuição para campos inteiros de tabelas de MySQL. Um colega, iniciante nesta área me perguntou, ao ver um diagrama de classes que eu havia lhe passado, sobre o porque de utilizar em todos os meus indexes essa atribuição, perguntei então se ele sabia o que significava e o mesmo não soube me responder. minha primeira explicação foi a mais simples possível: Campos que utilizam essa atribuição não podem ser negativos, mas aquilo ficou me cutucando a mente e fui fazer uma busca por maiores detalhes. Me deparei com uma informção muito legal sobre o Range de números suportados no Mysql:
A maior diferença entre um campo marcado como unsigned é que esse tipo de campo não pode ser negativo, então se você está criando um index é bom utilizá-lo sempre como unsigned, mas existe um outro benefício, um “range” maior de números positivos para se trabalhar
Tinyint:
signed range é de -128 até 127.
unsigned range - 0 até 255
Mediumint:
signed range é de -8388608 até 8388607
unsigned range é de 0 até 16777215
Bigint:
signed range é de -9223372036854775808 até 9223372036854775807
unsigned range é de 0 até 18446744073709551615
Legal né ?
Um grande abraço a todos e votamos a falar sobre programação ainda essa semana
2 comments
Exatamente o que eu estava procurando.
Simples, direto e bem objetivo na explicação. Valeu…
Leave a Comment