Como Posso Obter a ID Única para a Última Linha Inserida?
Se você inserir um registro em uma tabela contendo uma coluna que tiver o atributo AUTO_INCREMENT, você pode obter o ID gerado mais recentemente chamando a função mysql_insert_id().
Você também pode recuperar o ID utilizando a função LAST_INSERT_ID() em uma string de consulta que foi passada a mysql_query().
Você pode verificar se um índice AUTO_INCREMENT é usado executando o seguinte código. Ele também verifica se a consulta era um INSERT com um índice AUTO_INCREMENT:
if (mysql_error(&mysql)[0] == 0 &&
mysql_num_fields(result) == 0 &&
mysql_insert_id(&mysql) != 0)
{
used_id = mysql_insert_id(&mysql);
}
O ID gerado mais recentemente é mantido no servidor em uma base por conexão. Ele não será alterado por outro cliente. Ele não será alterado mesmo se você atualizar outra coluna AUTO_INCREMENT com um valor não mágico (isto é, um valor que não é NULL e nem 0).
Se você quiser utilizar o ID que foi gerado por uma tabela e inserido em uma segunda tabela, você ode utilizar instruções SQL como esta: