mysql_insert_id

mysql_insert_id -- Podaje numer ID wygenerowany podczas ostatniej operacji INSERT

Opis

int mysql_insert_id ( [resource identyfikator_połączenia])

mysql_insert_id( ) zwraca ID wygenerowane dla pola z własnością AUTO_INCREMENT . Funkcja zwróci ID wygenerowane automatycznie przez ostatnią operację INSERT używającą podanego identyfikatora_połączenia . Jeżeli identyfikator_połączenia nie został podany , wykorzystywane jest ostatnio otwarte połączenie .

mysql_insert_id( ) zwróci 0 jeśli ostatnie zapytanie nie generowało wartości AUTO_INCREMENT . Jeśli chcesz przechować zwrócony przez funkcję wynik , upewnij się , że wywołujesz zaraz po zapytaniu generującym nową wartość .

Notatka : Funkcja MySQL LAST_INSERT_ID( ) zawsze zawiera ostatnio wygenerowane ID , a zwracana wartośc nie jest czyszczona pomiędzy kolejnymi zapytaniami .

Ostrzeżenie

mysql_insert_id( ) konwertuje typ wartości otrzymanej od natywnej funkcji MySQL C API mysql_insert_id( ) na typ long (czyli int w PHP ) . Jeśli kolumna AUTO_INCREMENT jest typu BIGINT , wartość zwracana przez mysql_insert_id( ) będzie niepoprawna . Należy w zapytaniu SQL użyć wewnętrznej funkcji MySQL LAST_INSERT_ID( ) .

Przykład 1 . Przykład użycia mysql_insert_id

 
?php

 
mysql_connect(

 
'localhost'

 
,

 
'uzytkownik'

 
,

 
'haslo'

 
)

 
or

 
die('Nie

 
można

 
się

 
połączyć')

 
;

 
mysql_select_db('baza')

 
;

 
mysql_query("INSERT

 
INTO

 
mytable

 
(product

 
)

 
values

 
('kossu')")

 
;

 
printf

 
("Ostatnio

 
dodany

 
rekord

 
ma

 
id

 
%d\n"

 
,

 
mysql_insert_id())

 
;

 
?



Patrz także : mysql_query( ) .