सबसे पहले, एक छोटी सी पृष्ठभूमि। मेरे पास जावा एप्लिकेशन का एक सेट है, कुछ जेपीए पर आधारित हैं, कुछ नहीं। मेरे डेटाबेस बनाने के लिए मैं वर्तमान में जेपीए का उपयोग करने वालों के लिए स्क्रिप्ट बनाने के लिए हाइबरनेट्स स्कीमा निर्यात का उपयोग कर रहा हूं। जेपीए का उपयोग नहीं करने वाले मैं हाथ से स्क्रिप्ट उत्पन्न करते हैं। ये तब एएनटी का उपयोग कर अनुप्रयोग स्थापना के दौरान चलाए जाते हैं। अपडेट के लिए एप्लिकेशन इंस्टॉलर बस डेटाबेस में अद्यतन स्क्रिप्ट लागू करता है।क्या फ्लाईवे या लिक्विबेस सीधे डाटाबेस को अपडेट करने के बजाय अपडेट स्क्रिप्ट उत्पन्न कर सकता है?
डेटाबेस अपडेट के प्रबंधन में सुधार करने के लिए मैं फ्लाईवे और लिक्विबेस देख रहा हूं। दोनों जो चाहते हैं वह लगभग ऐसा लगता है, (एक तरफ: मैं फिलहाल फ्लाईवे पसंद कर रहा हूं क्योंकि हमारे पास पहले से मौजूद सभी मौजूदा एसक्यूएल/डीडीएल स्क्रिप्ट हैं)। जो मुद्दा मैं देख सकता हूं वह यह है कि वे दोनों डेटाबेस को सीधे अपडेट करते हैं। यह बहुत सारे प्रतिष्ठानों के लिए ठीक है लेकिन सभी नहीं।
मैं क्या करना चाहता हूं डेटाबेस के खिलाफ फ्लाईवे/लिक्विबेस चलाएं और एक अद्यतन स्क्रिप्ट उत्पन्न करें जिसमें डेटाबेस को अद्यतित करने के लिए आवश्यक सभी अपडेट शामिल हैं - किसी भी बदलाव सहित फ्लाईवे/लिक्विबेस को अपनी टेबल बनाने की आवश्यकता है । यह डेटाबेस को अद्यतन करने के लिए एप्लिकेशन (एस) के बाहर अद्यतन स्क्रिप्ट चलाने के लिए मुझे (या अधिक महत्वपूर्ण रूप से एक डेटाबेस व्यवस्थापक) की अनुमति देगा। फिर मैं अपने आवेदन के भीतर फ्लाईवे/लिक्विबेस का उपयोग पूरी तरह सत्यापित करने के लिए कर सकता हूं कि डेटाबेस अद्यतित है।
क्या यह उस मामले के लिए फ्लाईवे या लिक्विबेस या किसी अन्य उपकरण के साथ ऐसा करना संभव है?
liquibase की मेरी पसंदीदा विशेषताओं में से एक यह SQL स्क्रिप्ट उत्पन्न करने की क्षमता है। मैं पागल डीबीए के जो मुझे इनकार एक डेमो के लिए उपयोग कर सकते :-) के साथ इस का उपयोग देखें: http://stackoverflow.com/questions/8397488/comparing-databases-and-genrating-sql-script-using-liquibase/ –