Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Equivalencia en definicion de datos (https://www.clubdelphi.com/foros/showthread.php?t=40883)

Tauro78 01-03-2007 04:58:07

Equivalencia en definicion de datos
 
hola quisiera saber lo siguinete; defini estos dominios y los vincule a estos campos:
tengo definido el campo KILOS como decimal(6,3) y el campo IMPORTE como decimal(11,2), para esto use el IBExpert con Firebird 2.
Entonces en la aplicacion uso las MDO para conectarme a FB y uso una MDOTTable llamada DETALLE, en la propiedad FieldDefs de la tabla se muestran los campos definidos, entre esos campos estan KILOS e IMPORTE.
Entonces cuando elijo el campo KILOS me muestra las distintas propiedades, resulta que en la propiedad aparece DataType: ftBCD, Precision: 9, Size: 3; mientras que en el campo IMPORTE muestra lo siguiente, DataType: ftBCD, Precision: 18, Size: 2
Mi pregunta es, esto esta bien ? Se corresponde con lo que defini en el IBExpert o tengo que modificarlo para que se ajuste a decimal(6,3) y decimal(11,2) ?
Desde ya muchas gracias.

Isnel 06-03-2007 20:33:18

Lee este artículo, espero que encuentres ahí la respuesta

http://www.marteens.com/trick25.htm

Lepe 07-03-2007 13:26:46

Yo no usaría un MDOTable... es volver a Paradox, lo suyo es usar un MDODataset.

Si no quieres tener problemas con decimales, te aconsejo usar numeric(10,2) (10 como mínimo) en todos tus campos y usar un Dialecto 3 (esto es primordial).

El hecho, es que dependiendo de la precisión (el primer número entre paréntesis), Firebird guardará el valor con un tipo de datos determinado. Si en algún momento se guarda como Float, podrás obtener números decimales incorrectos, es decir, el valor que querías guardar no se corresponde con el guardado.

Para una comprensión mejor, mira el archivo DataDef.pdf pág 60-65 (Data Definition) de los manuales de Interbase 6 disponible en www.ibphoenix.com apartado de Documentation.

Saludos

Tauro78 14-03-2007 21:11:07

Muchisimas gracias por sus respuestas.


La franja horaria es GMT +2. Ahora son las 21:03:11.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi