मुझे लगता है कि आप इसे डालने के बाद कुछ अंतिम बिंदु पर इस अंतिम डाली गई आईडी को पुनर्प्राप्त करना चाहते हैं, क्योंकि यदि आपको इसे डालने के बाद सही तरीके से आवश्यकता है तो आप स्पष्ट रूप से पहले से ही पता है कि आईडी क्या है।
एकमात्र तरीका यह है कि आप इसे पाने में सक्षम होंगे, तालिका पर एक और कॉलम है जो इंगित कर सकता है कि कौन सी पंक्ति आखिरी डाली गई थी, जैसे कि टाइमस्टैम्प या डेटाटाइम कॉलम। यदि आपकी आईडी अद्वितीय और बढ़ती हैं, तो आप केवल उस कॉलम का उपयोग कर सकते हैं। फिर आप उस कॉलम द्वारा अवरोही क्रम में आदेश दिया गया 1 पंक्ति का चयन करें।
उदाहरण के लिए
INSERT INTO my_table (id, timestamp) VALUES (123, NOW())
SELECT id FROM my_table ORDER BY timestamp DESC LIMIT 1
संपादित करें: के रूप में नीचे टिप्पणी प्रति, तो आप बहुत से बेहतर कर रहे हैं एक AUTO_INCREMENT स्तंभ का उपयोग, हालांकि इस कॉलम नहीं है id
स्तंभ होने के लिए आपको एक ऑटो जोड़ सकता है प्रकार Int
के कॉलम और बस इसके द्वारा ऑर्डर करें।
स्रोत
2012-01-05 16:58:58
आईडी ऑटो वेतन वृद्धि नहीं है, तो आप अपने सम्मिलित बयान में यह आपूर्ति करने के लिए है, तो आप पहले से ही यह –
@Darhazer है दूसरे देश में एक और नेटवर्क ....? –
जिस तरह से LAST_INSERT_ID() रिकॉर्ड को सम्मिलित करने वाले सत्र के लिए काम करता है, यह किसी अन्य देश में किसी अन्य नेटवर्क से कुछ भी वापस नहीं करेगा :) –