Problemas con Firebird y UPDATE
Hola amigos de Club Delphi ... tengo un problema y no se como resolverlo porque me tira este error y la verdad que es MUY MOLESTO.
Les explico Estoy haciendo un proyecto en donde uso DBXPRESS con Firebird. La conexion y las inserciones todo bien funcionan a la maravilla pero cuando voy a querer modificar algun registro con la instruccion UPDATE me tirar este mensaje Cita:
Ahi les va mi codigo el cual me funciona a la perfeccion con las inserciones.
Muchas Gracias |
¿En qué línea da el error? ¿con qué valores? ¿cuál es la sentencia de udpate? ...
|
La sentencia es la siguiente
El problema me lo genera cuando quiero modificar campos que son VARCHAR o sea como dice el error TDBXError :Conversion error from string. La situación se soluciona cuando concateno todos los campos pero no es la idea si utilizo parametros. Gracias |
Cita:
|
Algun campo esta mal definido o una variable no tiene el tipo de dato correcto, me hace pensar que el error te lo manda porque estas intentado almacenar un dato de tipo string en un campo numérico o vicerversa....checa eso !. Puede ser que por ahi este la solución.
Por cierto...si necesitamos mas información, ejemplo: LOS CAMPOS DE LA TABLA, DE QUE TIPO DE DATOS SON? Y como dice Casimiro....mas información, asi solamente estaremos especulando por donde te da el error. Observando tus datos:
"Cuenta" y "Clave", con numéricos? o son de tipo String? Saludos. |
Disculpen la tardanza en contestar. Les comento lo siguiente:
He creado una clase llamada usuario con las siguientes propiedades:
Cabe aclarar que las inserciones no generan problema alguno. El error se suscita cuando en una actualización trato de actualizar (valga la redundancia) los valores del tipo VARCHAR. Por lo que segui investigando aparentemente es un error en el motor de base de datos que por cierto utilizo FIREBIRD 3 y para conectarme los componentes IBDAC. La tabla tiene esta estructura: Código SQL [-]1) ID int not null primary 2) NOMBRE varchar(45) not null 3) CUENTA varchar(15) not null 4) CLAVE varchar(15) not null 5) PERMISOS int not null 6) ESTADO int not null 7) OBS varchar(255) Espero que puedan ayudarme amigos. Muchas Gracias |
Cita:
|
Solo podré especular, mi experiencia no es mucha, ya nos orientara el moderador, pero esta parte del codigo es correcto?.
|
Cita:
|
Es distinto que poner una cadena en vacio ...
Null lo utilizo para poner en el campo en vacio en la base de datos. |
Precisamente, no puedes convertir un null a string, usa la cadena vaci´a ''
|
Buenas amigos ... gracias por la ayuda.
Encontré la solución y era problema con las transacciones. Suprimi un el StartTransaction y funciono. Muchisimas gracias. |
Eso pasa por no poner el co´digo fuente, no podemos adivinar ;)
|
La franja horaria es GMT +2. Ahora son las 17:35:50. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi