Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Wyciągnięcie id ostatnio zmienianego rekordu
Forum PHP.pl > Forum > Przedszkole
harbii
pokaże nam id ostatnio dodanego rekordu
Czy istnieje jakoś możliwość wyciągnięcia ostatnio update'owanego rekordu?
darko
Przecież i tak robiąc update określasz warunki pozwalające jednoznacznie zidentyfikować encję.
Pyton_000
Chyba że określa warunke aktualizacji a nie ID

coś w ten deseń:
  1. SET @uids := NULL;
  2. UPDATE footable
  3. SET foo = 'bar'
  4. WHERE fooid > 5
  5. AND ( SELECT @uids := CONCAT_WS(',', fooid, @uids) );
  6. SELECT @uids;
trueblue
Albo update'uje więcej niż jeden rekord.
darko
Jeśli modyfikujesz tylko jedną encję, to wystarczy pobrać id rekordu selectem z warunkiem dokładnie tym samym, jaki był przy aktualizacji. Natomiast przy wielu encjach sytuacja ma się następująco:
1) albo wcześniej, jeszcze przed aktualizacją, modyfikujesz tabelę dodając kolumnę np. typu datetime lub timestamp, w której za każdym razem zapisujesz datę ostatniej modyfikacji encji (pomocny może się okazać tutaj trigger)
2) a tutaj masz drugi sposób, lepszy od pierwszego: klik

To przez to, że funkcja last_insert_id() zwróci poprawną wartość tylko dla pól z modyfikatorem AUTO_INCREMENT
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.