Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Qtde de números dentro do parêntese

Olá, gostaria de entender o que significa colocar NUMBER (5,2) por exemplo, com base na imagem abaixo. Eu entendi que apenas um numero dentro do parêntese significa a quantidade de caracteres, mas e 2?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Olá, Laina.

Tudo bem?

Quando você define um tipo de dado como NUMBER(5,2) em SQL usando o Oracle Database, você está especificando o formato numérico da seguinte maneira:

  • O primeiro número dentro dos parênteses (neste caso, 5) indica a precisão total do número. Isso quer dizer que o número pode ter até 5 dígitos no total.
  • O segundo número (neste caso, 2) indica a escala, ou seja, o número de dígitos que podem aparecer após o ponto decimal.

Portanto, NUMBER(5,2) pode armazenar números de -999.99 até 999.99. A precisão total inclui tanto os dígitos antes quanto depois do ponto decimal.

Na imagem que você mencionou, podemos ver como diferentes definições de NUMBER afetam a maneira como os dados são armazenados e apresentados:

  • NUMBER(3,2) e NUMBER(4,2) "excedem a precisão" porque o número 123.89 tem mais dígitos no total do que o permitido pela precisão definida.
  • NUMBER(5,2) consegue armazenar o número 123.89 corretamente, pois tem precisão suficiente para todos os dígitos.
  • NUMBER(6,2) mostra 100 porque provavelmente houve um erro de digitação ou de interpretação na imagem, já que com essa definição, o número 123.89 deveria ser armazenado corretamente.

Espero que isso esclareça sua dúvida sobre o uso de NUMBER com dois parâmetros em SQL no Oracle Database. Qualquer dúvida manda aqui de novo. Valeu.

Ficou muito mais claro, obrigada :)