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?

¿Fue útil?

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.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top