![]() |
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. |
|
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 |
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