PDA

Ver la Versión Completa : Mysql + ADO + Builder 6 c++


alt126
03-06-2008, 12:05:35
Hola a todos.

Estoy diseñando una interfaz con una bd y tal como pone en el titulo, esta en mysql. La conexion la he hecho mediante una string sin odbc y estoy utilizando componentes ADO.

La conexion va de maravilla, veo los datos y perfecto. El problema aparece en que cuando intento modificar los datos de una tabla, si no modifico ningun de sus campos, me sale este error:

No se puede encontrar la fila para su actualizacion: algunos valores han cambiado desde la ultima vez que se leyo:

No tengo ni idea de porque me pasa esto. Se produce al hacer el post.

Tambien me sale ese mismo mensaje cuando intento comprobar la concurrencia. Es decir, cuando ejecuto 2 copias del mismo programa e intento modificar el mismo registro. Uno lo hace bien, pero el otro nada...ERROR, ademas no me refresca los datos de uno a otro.

Hasta ahora habia usado siempre BDE y es mi primera vez con ADO. Hay algo que no sepa y estoy haciendo mal???

GRACIAS

poliburro
03-06-2008, 14:50:15
Hasta ahora habia usado siempre BDE y es mi primera vez con ADO. Hay algo que no sepa y estoy haciendo mal???

GRACIAS


No, nada haces mal, Sucede que ese error se dispara cuando al intentar modificar una fila, esta ya fué modificada previamente y grabada por lo que los datos han cambiado.

Te recomiendo que utilices en lugar de tables Querys y de ser porsible Sps.

Saludos

alt126
04-06-2008, 06:25:42
Podrias explicarme que son Sps?

Y otra cosa...es conveniente usar los componentes ADO o son mejores los Zeos esos tan famosos?

Gracias

poliburro
04-06-2008, 14:48:26
A mi, me gusta mucho más ADO por que me permite explotar las características avanzadas de Mysql.

Si tu estás iniciando en esto te conviene más Zeos.

Saludos

alt126
06-06-2008, 07:42:30
Quiero usar ADO, porque te permite conectarte sin ODBC, con una cadena de conexion y es lo que busco.

Mi problema es que me siguen saliendo el mensaje ese.

¿Puedes mostrame un codigo para insertar datos en una tabla? Necesito ver como se hace...por si estoy haciendo algo mal.

GRACIAS