Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Pobieranie indeksu wstawionego wiersza

LAST_INSERT_ID() ma zakres sesji.

Zwróci wartość tożsamości wstawioną w bieżącej sesji.

Jeśli nie wstawisz żadnych wierszy między INSERT i LAST_INSERT_ID , wtedy wszystko będzie działać dobrze.

Należy jednak pamiętać, że w przypadku wielu wstawionych wartości zwróci tożsamość pierwszego wstawionego wiersza, a nie ostatniego:

INSERT
INTO    mytable (identity_column)
VALUES  (NULL)

SELECT  LAST_INSERT_ID()

--
1

INSERT
INTO    mytable (identity_column)
VALUES  (NULL), (NULL)

/* This inserts rows 2 and 3 */

SELECT  LAST_INSERT_ID()

--
2

/* But this returns 2, not 3 */


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. połączenie MATLAB 7.0 i MYSQL

  2. Jak uzyskać wartość z jednej kolumny tabeli, gdy w połączeniu sql istnieją dwie kolumny o tej samej nazwie?

  3. Brak zmapowanych encji Doctrine ORM zgodnie z obecną konfiguracją

  4. Co jest nie tak z moim SQL tutaj? #1089 – Nieprawidłowy klucz prefiksu

  5. Prześlij obraz na serwer i zapisz ścieżkę obrazu w bazie danych mysql