Cómo obtener el valor del id (clave principal) en la operación anterior en MySQL
-
11-09-2019 - |
Pregunta
Estoy utilizando MySQL. Tengo que insertar una fila en una tabla en primer lugar, entonces necesito para obtener el id de la fila insertada. El código parece algo así como lo siguiente:
insert into mytable (column2, column3, column4) values('value2','value3','value4')or die(mysql_error());
Columna1
es el
clave principal
y es incremento automático. Entonces, ¿cómo obtener el valor de
column1
en la operación anterior?
Solución
Puede utilizar mysql_insert_id
. A partir de los documentos:
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');
mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
?>
Otros consejos
Usted probablemente está buscando el href="http://php.net/manual/en/function.mysql-insert-id.php" rel="nofollow noreferrer"> mysql_insert_id
función :
recupera el ID generado para una columna
AUTO_INCREMENT
por la anterior consulta (por lo general INSERT).
mysqli_insert_id
o PDO::lastInsertId
, dependiendo de la extensión que se utiliza para acceder a su base de datos MySQL.