FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
SQL error code = -303 ¿como solucionar?
Saludos cordiales,
tengo en una tabla firebird 1.5, un campo definido como MIN01 NUMERIC(3,2), y le asigno el valor 480 y me da el error del título. Lo hago así: TABLA.FIELDBYNAME('MIN01').ASFLOAT:=480; y al hacer TABLA.POST; da el error. también desde IBEXPERT le intento poner el valor al campo, y al cambiar de registro da el mismo error. Agradecería información de donde conseguir el listado de los errores de SQL, o si me decís como solucionar este error puntual. Gracias por anticipado. |
#2
|
||||
|
||||
Esto fue lo que encontre con una pequeña búsqueda en yahoo sobre "SQL Error Codes", espero que te pueda servir.
Cita:
¿porque no pruebas asignar 480.00 en lugar de solo 480? Igual y funciona.
__________________
Última edición por ContraVeneno fecha: 09-08-2005 a las 16:42:25. |
#3
|
||||
|
||||
Resp
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa. |
#4
|
||||
|
||||
Prueba tambien hacer esto:
TABLA.FieldValues['MIN01']:=480;
__________________
|
#5
|
|||
|
|||
Hola,
Por lo que tengo entendido, InterBase guarda el físicamente el valor como smallint, integer o double precision. Precision de 1 a 4 smallint, de 5 a 9 integer y partir de 9 double Tu campo definido como MIN01 NUMERIC(3,2), lo multiplica por 100 para guardarlo y guarda la escala (el numero de decimales) en una tabla del sistema para despues restaurar el numero original. Saludos. |
#6
|
|||
|
|||
Gracias a todos,
intenté grabar 480,00 y me da el mismo error, en el fichero LANGREF.PDF de la documentación de Interbase no he visto el error -303, y en la respuesta de Contraveneno hace referencias a campos date,time, etc. He cambiado la definición del campo de NUMERIC (3,2) a (5,2) y a funcionar, me parece un poco raro. Repito las GRACIAS, da gusto ver que hay personas dispuestas a ayudar a los que estamos empezando. |
#7
|
||||
|
||||
resp
Si no puedes con el enemigo unetele.
Declara el campo como double prescion
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa. |
|
|
|