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

Можете ли да се доверите на mysql_insert_id?

Да, можете.

Функцията е за сесия, но също така е валидна само за последната заявка.

Това означава, че никога няма да имате един потребител, който "замърсява" last_insert_id на друг, но не можете да възстановите insert_id от преди две вмъквания. Когато трябва да направите няколко вмъквания подред и нямате нужда от идентификаторите до по-късно, задайте ги като променливи:

INSERT INTO ...
SET @foo_id = LAST_INSERT_ID();
INSERT INTO ...
SET @bar_id = LAST_INSERT_ID();
INSERT INTO some_join_table VALUES (@foo_id, @bar_id);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Функция SUM() в MySQL

  2. Достъпът е отказан за потребител на база данни на уебсайта goDaddy

  3. Как да боравим с наследена база данни в рамката на Django

  4. Unicode в MySQL Regex?

  5. Не мога да накарам Simple SQL Insert да работи