यदि आवेदन के बाद आपका डेटा बदल दिया गया है, तो आप डेटाबेस को अद्यतित कैसे रखते हैं?, डेटाबेस संरचना को अद्यतित कैसे रखें?
मेरा मतलब है, आप तालिका को जोड़ या निकाल सकते हैं, यह एक साधारण कार्य है। मौजूदा तालिका को बदलना भी छोटा हो सकता है। लेकिन अगर आप अक्सर संरचना बदलते हैं, तो आप इसे नियंत्रण में कैसे रखते हैं?
मैं डेटाबेस में मौजूदा डेटाबेस संस्करण के साथ एक टेबल रखना चाहता था। फिर प्रत्येक अपग्रेड एक एसक्यूएल फाइल थी जिसने अपना काम किया - नई टेबल बनाएं, कॉलम जोड़ें या डेटा ले जाएं। फ़ाइलों का नाम उन संस्करणों के नाम पर रखा गया था - इसलिए यदि मेरी अपग्रेड स्क्रिप्ट को डेटाबेस संस्करण 10 मिला, तो उसने अभी तक सभी फ़ाइलों को 11.sql से N.sql तक ले लिया और उनमें से प्रत्येक एक ही समय में डेटाबेस संस्करण संख्या को बढ़ा रहा है।
ऐसा लगता है कि यह ठीक काम कर रहा है, लेकिन मुझे आश्चर्य है - ऐसे कार्यों के लिए आपकी रणनीति क्या है?
अगर मैं एक "पैच" में एक टेबल को सामान्यीकृत करता हूं और इसके बाद मैं इसे किसी भी कारण से फिर से denormalize। फिर यह दो बार किया जाता है।
लेकिन, जब भी मैं कुछ बदलता हूं, एक पूर्ण अपग्रेड स्क्रिप्ट लिखना दर्दनाक और त्रुटि-प्रवण लगता है। कम से कम अधिक परमाणु परिवर्तन।
इसके अलावा, मैं उम्मीद कर सकता हूं कि अलग-अलग ग्राहकों के पास किसी भी समय अलग-अलग डेटाबेस संस्करण चल रहे हैं, इसलिए मुझे वास्तव में किसी भी बिंदु से ऊपर जाने का कोई तरीका होना चाहिए।
बहुत समान प्रश्न: http://stackoverflow.com/questions/308/is-there-a -वर्जन-नियंत्रण-प्रणाली-डेटाबेस-संरचना-परिवर्तन –