Mysql
 sql >> база данни >  >> RDS >> Mysql

LAST_INSERT_ID() MySQL

Можете да съхраните последния идентификатор за вмъкване в променлива :

INSERT INTO table1 (title,userid) VALUES ('test', 1); 
SET @last_id_in_table1 = LAST_INSERT_ID();
INSERT INTO table2 (parentid,otherid,userid) VALUES (@last_id_in_table1, 4, 1);    

Или вземете максималния идентификатор от таблица 1 (РЕДАКТИРАНЕ:Предупреждение. Вижте бележка в коментарите от Роб Старлинг относно възможни грешки от условията на състезанието при използване на максималния идентификатор)

INSERT INTO table1 (title,userid) VALUES ('test', 1); 
INSERT INTO table2 (parentid,otherid,userid) VALUES (LAST_INSERT_ID(), 4, 1); 
SELECT MAX(id) FROM table1;  

(Предупреждение:както посочва Роб Старлинг в



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да намерите подобни резултати и да сортирате по прилика?

  2. Как да деактивирам кеширането на SQLAlchemy?

  3. Най-ефективният начин за вмъкване на редове в MySQL база данни

  4. Генериране на поредица от дати

  5. Функция SCHEMA() в MySQL