Delphi - tengo problemas con la funcion last_insert_id() en MySQL

 
Vista:
Imágen de perfil de fran
Val: 18
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

tengo problemas con la funcion last_insert_id() en MySQL

Publicado por fran (10 intervenciones) el 09/09/2014 23:36:09
Hola, q tal...haciendo referencia al foro, tengo un problema al que no lo logro darle solucion. Estoy trabajando con Delphi y MySql y cuando realizo una inserción en la bd, intento recuperar el valor del registro metido, ya sea desde la capa intermedia mediante un query o desde el mismo mysql y siempre me devueve el valor 0. El mismo entorno MySQL Worckbench tambien me devuelve 0. La funcion last_insert_id() de MySQL debería devolverme el valor de la clave primaria del registro insertado y la clave primaria es autoincremental.

La funcion es llamada desde la capa intermedia en el evento AfterUpdateRecord del TDataSetProvider correspondiente,
alguien puede ayudarme.

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

tengo problemas con la funcion last_insert_id() en MySQL

Publicado por E.T. (1244 intervenciones) el 10/09/2014 01:36:21
Usando una herramienta un poco mas vieja que el Worckbench yo legré que la funcion me regresara valores, describo el procedimiento:
Abre una instancia del Worckbench, en mi caso mysql administrator, y ejecuta un insert, luego ejecuta un select con la funcion, pero en la misma pestaña, pues si lo haces en otra pestaña no funciona, si te fijas en la documentacion de la funcion, ésta te regresa el ultimo id que insertaste y te lo filtra por cliente, esto es que cada aplicacion que se conecta tiene su propio id, volviendo al ejemplo, si se ejecuta desde una pestaña distinta mysql lo toma como un cliente distinto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de fran
Val: 18
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

tengo problemas con la funcion last_insert_id() en MySQL

Publicado por fran (10 intervenciones) el 10/09/2014 15:50:53
Gracias por el apunte...he estado probando y he decidido probar a crear contadores para las tablas, recuperar esos contadores y antes de la insercion y actualizarlos despues de cada una.

No me es fiable pues lanzo la connsulta desde un servidor de aplicaciones para actulizar el paquete de vuelta al cliente con el valor de PK recien insertado.

Un salud.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar