Así que estoy trabajando en el proyecto # ca que crea fila de una tabla con una columna de fecha y hora y luego extraer ese auto generada Identificación de esa columna después. Mi manera de extraer el ID es a través del código de abajo el problema es la longitud que se necesita para ejecutar la primera consulta y luego la segunda consulta es más de 1 segundo por lo que terminan recibiendo las filas vacías. Entonces, ¿cómo puedo insertar o seleccionar filas menos los segundos?
INSERT INTO transactionlog(transactionDate) VALUES(NOW())
E inmediatamente después ESTE
SELECT transactionID,transactionDate FROM transactionlog WHERE transactionDate=NOW();
NOW()
le da la fecha / hora en la declaración que contiene comenzó . Si bien se garantiza que varios invokations en la misma consulta devuelven el mismo valor, esto no es cierto cruzando consultas.
Para obtener el valor de auto-incrementales generados durante una inserción, se puede utilizar LAST_INSERT_ID()
en su lugar:
INSERT INTO transactionlog(transactionDate) VALUES(NOW());
SELECT LAST_INSERT_ID();