Você está aqui: Firebird ::: Dicas & Truques ::: Tipos de Dados

Aprenda a usar os tipos de dados DECIMAL e NUMERIC do Firebird

Quantidade de visualizações: 18596 vezes
Os tipos de ponto-fixo (decimais fixos) tais como DECIMAL e NUMERIC permitem o gerenciamento de números que devem ser expressos com uma parte fracionária exatamente igual ao número de casas decimais (ou escala) especificado. Geralmente precisamos de tipos de escala fixa quando estamos lidando com valores monetários ou números que resultam de contagem ou cálculos envolvendo unidades inteiras e partes de unidades. Nesta dica mostrarei como usar estes dois tipos em campos de tabelas do Firebird e a diferença entre os dois.

Veja um comando SQL DDL CREATE TABLE que cria uma tabela contendo um campo do tipo NUMERIC:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

CREATE TABLE PRODUTOS (
  ID     INTEGER NOT NULL,
......


Nesta tabela o campo ID é do tipo INTEGER, NOME é do tipo VARCHAR(40) e PRECO é do tipo NUMERIC(5,2). Veja que a definição do tipo NUMERIC é composta de duas partes. O primeiro parâmetro especifica o tamanho do campo, ou seja, a quantidade de dígitos permitidos. O segundo parâmetro especifica a quantidade de casas decimais. Assim, os valores armazenados neste campo não poderão ter mais que duas casas decimais. Observe três comandos SQL DML INSERT INTO que inserem registros nesta tabela:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

INSERT INTO PRODUTOS VALUES(12, 'AÇUCAR DIAMANTE', 234.54);
......


Ao listar os dados da tabela teremos o seguinte resultado:

ID  NOME	       PRECO
12  AÇUCAR DIAMANTE    234,54
13  DOCE DE LEITE      234,55


No segundo registro o valor 234.547 é transformado em 234,55, ou seja, como só podemos usar duas casas decimais, houve um arredondamento.

O tipo de dados DECIMAL é similar ao tipo NUMERIC. A diferença está na precisão. Em um campo do tipo NUMERIC é exatamente igual à declarada, enquanto o tipo DECIMAL aceita um valor cuja precisão é no mínimo igual à que foi definida até o limite possível.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Firebird

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 26 usuários muito felizes estudando em nosso site.