Manual do PHP
Anterior |  | Próxima

# mysqli_insert_id

(PHP 5)

mysqli_insert_id

(no version information, might be only in CVS)

mysqli->insert_id -- Retorna o id gerado automaticamente na última consulta

## Descrição

Estilo de procedimento:

mixed mysqli_insert_id ( object link )

Estilo orientado a objeto (proprieadade):

class mysqli {
mixed insert_id
}

A função mysqli_insert_id() retorna o ID gerado pela consulta em uma tabela com uma coluna com o atributo AUTO_INCREMENT. Se a última consulta não foi um INSERT ou UPDATE ou se a tabela modificada não tem uma coluna com o atributo AUTO_INCREMENT, esta função irá retornar zero.

> Nota: Executar uma consulta INSERT ou UPDATE usando a função LAST_INSERT_ID() irá também modificar o valor retornado pela função mysqli_insert_id().

## Valores de retornado

O valor do campo `AUTO_INCREMENT` que foi atualizado pela consulta anterior. Retorna zero se não houve uma consulta anterior na conexão ou se a consulta não atualizou um valor `AUTO_INCREMENT`.

> Nota: Se o número for maior do que o maior valor inteiro possível, mysqli_insert_id() irá retornar uma string.

## Exemplo

Exemplo 1. Estilo orientado a objeto
`<?php $mysqli = new mysqli("localhost", "my_user", "my_password", "world"); /* check connection */ if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); } $mysqli->query("CREATE TABLE myCity LIKE City"); $query = "INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)"; $mysqli->query($query); printf ("New Record has id %d.\n", $mysqli->insert_id); /* drop table */ $mysqli->query("DROP TABLE myCity"); /* close connection */ $mysqli->close(); ?>`

Exemplo 2. Estilo de procedimento
`<?php $link = mysqli_connect("localhost", "my_user", "my_password", "world"); /* check connection */ if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); } mysqli_query($link, "CREATE TABLE myCity LIKE City"); $query = "INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)"; mysqli_query($link, $query); printf ("New Record has id %d.\n", mysqli_insert_id($link)); /* drop table */ mysqli_query($link, "DROP TABLE myCity"); /* close connection */ mysqli_close($link); ?>`

Os exemplos acima devem produzir a seguinte saída:

    New Record has id 1.

Anterior | Principal | Próxima
mysqli_init | Acima | mysqli_kill