MySQL: Conocer el último ID autonumérico
Teniendo las siguientes premisas:
- Tenemos una primera tabla que tiene una llave primaria representada por un campo autonumérico (ventas).
- Tenemos una segunda tabla que se relaciona con la primera mediante una llave foránea (ventas_detalle).
- Tenemos una pantalla en un sistema que utiliza las tablas anteriores, donde en la misma transacción se deben insertar registros en ambas tablas.
Si estamos manejando el motor de base de datos MySQL, nos permite resolver la pregunta anterior con un solo comando: mysql_insert_id.
El ejemplo de código en PHP sería:
$VConn= ConectarBD("", "", ""); // Conexión a base de datos
$VSql="INSERT INTO ventas (folio, total) VALUES ($Folio, $Total);"
mysql_query($VSql, $VConn);
$UltimoID= mysql_insert_id($VConn);
for ($ind=0; $ind < $Registros; $ind++)
{
// Las variables se adaptan a tu proyecto
$VSql= "INSERT INTO ventas_detalle (id_venta, id_producto, cantidad, monto) VALUES ($UltimoID, $Id_Producto, $Cantidad, $Monto);";
}
Espero que implementen este conocimiento en alguno de sus códigos, estoy a sus órdenes, dudas y comentarios a rodrigo@creandosistemas.com.mx