![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 1 Dołączył: 10.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki problem.
Dodaję do bazy korzystając z pdo rekord. Wtrakcie dodawania id rekorodu jest autoincrementowane. Czy jest możliwość aby poznać to id nie korzystając z kolejnego zapytania. Chodzi o to że w następnym zapytaniu będe potrzebował to id i gdyby udało mi sie przy tym pierwszym zapytaniu wyciągnąć w jakiś sposób z tego zapytania te id nie musiałbym tworzyć kolejnego zapytania tylko po to by poznać to id. Teraz muszę zrboić tak: 1. INSERT INTO `tabela` (`nazwa`) VALUES ('jakaś wartosc') // Dodanie do tablicy rekordu - id zostanie autoincrementowane 2. SELECT max(`id`) FROM `tabela` // znalezienie id rekordu który przed momętem dodałem 3. ... //dodanie kolejnego rekordu do innej tabeli z wykorzystaniem pobranego wcześniej id Chciałbym zrezygnować z drugiego polecenia. Czy da się te dwa pierwsze polecenia jakoś razem połączyć w jedno. Z góry dzięki za konkretną odpowiedź. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 782 Pomógł: 153 Dołączył: 21.07.2010 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]! |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
@everth: masz napisane że korzysta z PDO a nigdzie nie napisał że korzysta akurat z mysql, ale z manualem masz rację tylko nie do tej funkcji podlinkowałeś co trzeba
PDO::lastInsertId -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 1 Dołączył: 10.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki śliczne za odpowiedź.
Rzeczywiście wystarczyło zajrzeć do manuala. Nie jestem zbyt doświadczony w temacie baz danych i może dlatego cały czas próbowałem skonstruować jedno zapytanie by dodało i jednocześnie zwróciło mi to id. A rozwiązanie było takie proste ![]() Jeszcze raz dzięki. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 09:15 |