Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jak pobrać ostatnio dodany rekord z bazy?
Forum PHP.pl > Forum > Bazy danych > MySQL
humman
Witam
Jak w temacie.

Próbowałem tak:

select top 1 id from tabela

ale to nie działa w phpmyadmin.

jak to można zastąpić?

To co dokładnie chciałbym zrobić to w jednej funkcji dodać nowy rekord do bazy i od razu po dodaniu wybrać ten rekord aby pobrać jego ID i dalej użyć.
f1xer
jeżeli kolumna z id jest Auto Increment to możesz użyć
LAST_INSERT_ID()
Crozin
Do zwrócenia ostatnio dodanego rekordu, w przypadku, gdy w tabeli istnieje pole ID, które ma włączone AUTO_INCREMENT wystarczy zapytanie:
  1. SELECT ... FROM ... ORDER BY id DESC LIMIT 1 ;
Ale jeżeli chcesz pobrać ID ostatnio dodanego rekordu wystarczy inne zapytanie:
  1. SELECT LAST_INSERT_ID();
humman
Próbuję tak

SELECT LAST_INSERT_ID(id)
FROM kategorie
LIMIT 0 , 1

i mi zwraca 0 :/


ale za to

SELECT ... FROM ... ORDER BY id DESC LIMIT 1 ;

działa więc dziękuję Crozin
Crozin
  1. SELECT LAST_INSERT_ID();
I tyle... bez żadnych FROM a już tym bardziej LIMIT.
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.