LAST_INSERT_ID केवल स्वतः उत्पन्न प्राथमिक कुंजी के लिए कार्य करेगा, जिसे auto_increment फ़ील्ड पर बनाया गया था। आपके मामले में, ऐसा लगता है कि आप स्पष्ट रूप से आईडी की आपूर्ति कर रहे हैं, इसलिए अंतिम सम्मिलित आईडी सेट नहीं है।
यह स्पष्ट है:
mysql> insert into test (id, name) VALUES (5, 'test 2');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT LAST_INSERT_ID();
+------------------+
| LAST_INSERT_ID() |
+------------------+
| 0 |
+------------------+
1 row in set (0.00 sec)
यह निहित है:
mysql> insert into test (name) values ('test');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT LAST_INSERT_ID();
+------------------+
| LAST_INSERT_ID() |
+------------------+
| 3 |
+------------------+
1 row in set (0.00 sec)