मैं एक टेबल दो TIMESTAMP
कॉलम के साथ रखना चाहता हूं। जब रिकॉर्ड बनाया गया था तब ट्रैक करने के लिए एक कॉलम और दूसरा इसे संशोधित करने के ट्रैक रखने के लिए ट्रैक करता था। मैं चाहता हूं कि ये मान डेटाबेस द्वारा संभाले जाएं। मैं नहीं चाहता कि मेरी ऐप परत को इसके बारे में सोचना पड़े।एकाधिक टाइमस्टैम्प कॉलम के साथ एक MySQL तालिका
मुझे पता है कि आप किसी अन्य TIMESTAMP
स्तंभ नहीं हो सकता है अगर आप एक DEFAULT CURRENT_TIMESTAMP
या एक ON UPDATE CURRENT_TIMESTAMP
के साथ एक TIMESTAMP
स्तंभ है। आप DATETIME
का उपयोग कर सकते हैं लेकिन इसे डिफ़ॉल्ट करने का कोई तरीका नहीं है, जिसे मैं ट्रिगर के बाहर जानता हूं।
मैं DEFAULT
या ON UPDATE
बिना प्रत्येक छोड़ने और NULL
डालने जब रिकॉर्ड बनाया जाता है, प्रत्येक वर्तमान टाइमस्टैम्प है जिसके कारण यह है कि आप can have multiple TIMESTAMP
columns पाया। उस बिंदु से पहले कॉलम पर स्वचालित रूप से अपडेट हो जाएगा।
यह शानदार रूप से काम करता है लेकिन यह मुझे एक अजीब लग रहा है। यह एक बग हो सकता है और इसे किसी भी समय पैच किया जा सकता है। अगर ऐसा काम करने वाला तरीका है तो ऐसा ही हो। मैं अपने रास्ते पर खुशी से जाऊंगा। क्या कोई मुझे बता सकता है कि ऐसा करने का यह सबसे अच्छा तरीका है या क्या मुझे ट्रिगर्स का उपयोग करना चाहिए?
MySQL 5.6.5 के साथ एकाधिक टाइमस्टैम्प को स्वतंत्र रूप से एक तालिका में नियंत्रित किया जा सकता है, इसलिए इसके लिए नियम बदल गए हैं। – TJChambers