Kiedy wykonuję instrukcję wstawiania do bazy danych MySQL w PHP, czy istnieje sposób na zwrócenie wygenerowanego automatycznie znacznika czasu lub czy potrzebuję osobnego wywołania do bazy danych w celu pobrania danych?
Edycja: Zapomniałem, że MySQL nie używa dat epok. Postanowiłem po prostu użyć autoinkrementującej liczby całkowitej i procedury przechowywanej.
Odpowiedzi:
2 dla odpowiedzi № 1Musisz poprosić o oddzielne żądanie, aby uzyskać te informacje. Możesz uzyskać tylko ostatni identyfikator insertów automatycznie zwiększanych tabel podczas wykonywania INSERT.
1 dla odpowiedzi nr 2
Użyj zapytania wielowyrazowego.
- Wybierz bieżący znacznik czasu do zmiennej.
- wstaw wiersz ze znacznikiem czasu.
- return (wybierz) zmienną do php.
0 dla odpowiedzi № 3
O ile wiem, jest to możliwe ostatnio wstawiony identyfikator jeśli ID
został ustawiony jako AUTO_INCREMENT
ed. Ale jeśli chodzi o znacznik czasu, doradzę Ci utworzyć stored procedure
więc będziesz mieć tylko jedno żądanie w bazie danych. Pamiętaj, że połączenie z bazą danych jest kosztowne.
0 dla odpowiedzi nr 4
Możesz zwrócić a last inserted id
po insert
, lubić:
<?php
$sql=mysql_query("INSERT INTO <TABLE> VALUES (?,?)");
return mysql_insert_id();
?>