Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

Gurzi

Duvida de datatype

Mensagens Recomendadas

Gurzi    2
Gurzi

Supostamente quando definimos um campo como inteiro ele mostra o lenght, julgava que ao dizer 4 queria dizer 4 dígitos.

Ou seja

datatype  lenght

int          4

Aceitaria 4 digitos, máximo 9999  não ??

é que defini um int 4 e ele deixa até 10 digitos.

Se fosse 4 bytes seria 12 digitos visto que 1 byte permite 3 digitos(255)

estou confuso!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    309
Rui Carlos

4 bytes -> 2^(4*8) = 2^32 = 4294967296

logo, permite representar qualquer número de 9 dígitos e alguns de 10 dígitos.

com 1 byte não consegues representar todos os números de 3 dígitos.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Gurzi    2
Gurzi

Sim tens razão..

Com 1 byte não consigo representar nada maior que 255!

então quer dizer que o SGBD indica os bytes e não o numero de digitos!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
RVG    0
RVG

boax...

com int, podemos ter valores de 0 et 4294967295 se for UNSIGNED, senao os valors variam entre -2147483648 e 2147483647.

datatype  lenght

int          4

Aceitaria 4 digitos, máximo 9999  não ??

nao...

existem algumas bd´s assim... so estou a ver cobol, em que pic 9(4)  aceitava valores no maximo com 4 digitos...

ter int(4), o que faz, armazena os valores ate ao limite acima mencionado, mas em parceria com outras propriedades, pode ter efeitos...

por exemplo :

INT(4) ZEROFILL NOT NULL DEFAULT 0

o que vai fazer, é que se nao tiver quatro digitos, preenche com zeros... se introduzires 123  ele vai mostar 0123

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
RVG    0
RVG

Boax ....

em mysql quase que ia jurar que o length era o tamanho dos campos xD

sim...se se tratar de certos tipos de campos....

por exemplo char(4) ou varchar(4) --- aceitam no maximo 4 letras...

Decimal(10,2)  aceita no maximo 10 digitos, dos quais 2 sao apos a virgula...

agora no caso de inteiros, biginteiros e smallinteiros... aplica-se o que eu disse anteriormente .

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade