Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Bạn có thể tin tưởng mysql_insert_id không?

Có, bạn có thể.

Hàm là mỗi phiên, nhưng nó cũng chỉ hợp lệ cho truy vấn cuối cùng.

Có nghĩa là, bạn sẽ không bao giờ có một người dùng "làm ô nhiễm" last_insert_id của người khác, nhưng bạn không thể khôi phục một insert_id từ hai lần chèn trước. Khi bạn cần thực hiện nhiều lần chèn liên tiếp và không cần id cho đến sau này, hãy đặt chúng làm biến:

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. Chuyên gia mySQL - cần trợ giúp với 'giao nhau'

  2. Lỗi SQL chuẩn bị sẵn sàng

  3. Cách cập nhật tất cả các ngày trong bảng

  4. Bộ nhị phân MySQL so với bộ ký tự char

  5. Câu lệnh chuẩn bị MySQL - Độ dài tối đa 1000 ký tự