मैं अभी कुछ समय के लिए देख रहा हूं लेकिन मुझे अपनी समस्या का आसान समाधान नहीं मिल रहा है। मैं एक तालिका में एक रिकॉर्ड की नकल करना चाहूंगा, लेकिन निश्चित रूप से, अद्वितीय प्राथमिक कुंजी को अद्यतन करने की आवश्यकता है।
मेरे पास यह प्रश्न है:
INSERT INTO invoices
SELECT * FROM invoices AS iv WHERE iv.ID=XXXXX
ON DUPLICATE KEY UPDATE ID = (SELECT MAX(ID)+1 FROM invoices)
समस्या यह है कि यह केवल IDपंक्ति को कॉपी करने के बजाय पंक्ति को बदलता है । क्या कोई जनता है कि यह कैसे ठीक किया जाता है ?
// संपादित करें: मैं सभी फ़ील्ड नामों को टाइप किए बिना ऐसा करना चाहूंगा क्योंकि फ़ील्ड के नाम समय के साथ बदल सकते हैं।