![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
![]() Hola foro...
tengo una pequeña duda con respecto a como elegir el tipo de campo adecuado para almacenar los datos... específicamente los numéricos... les cuento.... tengo que almacenar datos numericos tales como 125,75 7254254.86 en un principio escogi los campos tipo float, pero no me deja especificar que los necesito con 2 decimales ??? y con el tipo de campo numerico... como utilizo el formato por ejemplo cuando digo que significa esto ??? que la parte entera es de longitud 7 y la decimal es de 2???? o significa que el dato tiene una longitud de 7 pero que dos caracteres son decimales ??? y lo otro... como lo traspaso desde delphi para almacenarlo ??? generalmente utilizo esta forma de trapaso.. pero no se como hacerlo con el campo numeric
espero me puedan ayudar.. gracias
__________________
BlueSteel |
#2
|
|||
|
|||
Hola
Hola
Cuando utilizas un campo Numeric (7,2), te va a indicar un Campo que tiene 4 digitos enteros, un separador decimal y 2 valores decimales. Para el traspaso de los datos prueba utilizar la opcion .value. Ejem IBQ_Edit.Params[7].Value:= X; el campo tomará el valor que tiene predeterminado como tipo y te mostrará error si asignas una variable que no corresponda. |
#3
|
||||
|
||||
Cita:
![]() Cita:
![]() ![]()
__________________
BlueSteel |
#5
|
||||
|
||||
Te aconsejo que uses Numeric(10,2) y Dialecto 3, ya que en ese formato se guardan los números como Int64 de Delphi. Si miras la documentación de Interbase, verás que un Float se guarda siempre como números enteros, tanto para la parte entera, como la parte decimal.
De hecho, si usas Numeric(7,2) (creo recordar que en cualquier Dialecto), los números flotantes se guardan con distinta precisión, y advierte que no se use para cálculos monetarios. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#6
|
|||
|
|||
Para que te quites los dolores de Cabeza de pasar un texto a número, puedes usar el Currencyedit de la libreria Developer Express, te lo recomiendo, tiene una propiedad que es .value para los datos numéricos. Ademas te da la opción de escoger entre el tipo numerico que quieras. Ya no tendrías que hacer mas conversiones sino que colocas: SQLCampo.Value:=Edit.Value;
|
#7
|
||||
|
||||
Cita:
__________________
BlueSteel |
#8
|
|||
|
|||
Esa librería es Paga, pero muy completa. Si quieres entra a la página http://www.devexpress.com/ y verás lo que ofrece esta librería.
|
#9
|
|||
|
|||
Ahh se me olvidaba decirte que las Jedi que son gratis también tienen un componente para "currency" que te permiten capturar numeros sin complicaciones.
|
#10
|
||||
|
||||
Si me permitis. Necesito meterun campo con decimales a razon de 2 enteros y 7 decimales, entonces lo pongo asi numeric(10,7) tal y como se comenta en el foro, asi tengo 2 enteros, la coma decimal y 7 decimales, pero a la hora de meterlo al sql se empeña en poner(18,7), imagino que es porque al ser un float con decimales me pone el maximo entero, es decir, 10, pero no necesito tanto entero, alguna forma de arreglarlo para evitar ocupar memoria o es asi?
gracias |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ayuda con tipos de datos | Luli | Varios | 12 | 15-05-2005 05:56:13 |
Cual escojo para hacer infomes | istradlin | Impresión | 4 | 25-04-2005 20:20:02 |
Auxilio....Tipos de datos | buitrago | Firebird e Interbase | 0 | 07-09-2004 00:51:20 |
Reto Para Expertos En Base De Datos Y Tipos De Datos.... (blob) | frankmch | Conexión con bases de datos | 2 | 08-09-2003 19:44:52 |
unixodbc y tipos de datos | atmegabyte | Conexión con bases de datos | 0 | 04-07-2003 02:40:35 |
![]() |
|