2009-12-23 19 views
5

की आवश्यकता है मैं संस्करण डेटाबेस देख रहा हूं और यह कैसे करना है (कोडिंग डरावनी, कोड के लिए ode) के बारे में सामान्य लेखों में आया हूं। यह सब मुझे सही समझ में आता है, हालांकि मैं एक स्क्रिप्ट धावक खोजने की कोशिश कर रहा हूं जो मेरे लिए एसक्यूएल स्क्रिप्ट चलाएगा। इन सभी लेखों का उल्लेख स्वचालित रूप से उन्हें चलाने के लिए कुछ है, लेकिन उनमें से कोई भी कोई सिफारिश नहीं करता है।एक .NET डेटाबेस संस्करण स्क्रिप्ट धावक

क्या कोई भी इन स्क्रिप्ट को चलाने के लिए किसी भी उपयोगिताओं के बारे में जानता है? आदर्श रूप में कुछ ऐसा है जो निम्नलिखित तरीके से काम करता है:

  1. एक सौदे में सब कुछ चलाता है, इसलिए यदि किसी एक अद्यतन विफल रहता है, पूरी बात में विफल रहता है
  2. मैं योजना संस्करण डेटाबेस तालिका
  3. की क्षमता के नाम पर नियंत्रण है एक उन्नत जगह
  4. एक स्वचालित कार्य के हिस्से के रूप में चलाया जा सकता है लेता है, तो स्क्रिप्ट कि हमेशा चलाए जा रहे हैं की एक श्रृंखला के लिए

    संपादित

  5. मुक्त स्रोत

+0

DDL आम तौर पर एक लेन-देन के भीतर की अनुमति नहीं है, इसलिए बात के इस प्रकार के लिए आप आम तौर पर पहले एक बैकअप करने के लिए है, तो अपने वर्ज़निंग परिवर्तन स्क्रिप्ट लागू चाहते हैं, और त्रुटि पर, बैकअप बहाल। –

+0

पीएस क्या कोई इस प्रश्न के लिए बेहतर शीर्षक दे सकता है? –

+0

@ सैम मुझे लगता है कि लेन-देन की बात तब तक नहीं होनी चाहिए जब तक कि डाटाबेस को वापस मूल स्थिति में वापस करने के लिए कोई तंत्र न हो, कुछ विफल हो जाए, और इसे स्वचालित रूप से करें। –

उत्तर

5

चेक बाहर SSW SQL Deploy - यह बस के बारे में सब आप के लिए पूछ रहे हैं क्या करने के लिए दिखाई देता है। यह पहले से निष्पादित स्क्रिप्ट का ट्रैक रखता है, यह एक बार में और कई सर्वरों (यदि आवश्यक हो) पर स्क्रिप्ट का पूरा बैच चलाएगा, और बहुत आगे।

alt text

यह एक बहुत सरल है, लेकिन निफ्टी उपकरण है - अत्यधिक की सिफारिश की!

7

हम डीबीअप हमारे वेब प्रोजेक्ट में स्क्रिप्ट रनर के रूप में उपयोग करते हैं। इसका सरल और अच्छा ओपन सोर्स टूल्स जो आपको कंसोल एप्लिकेशन फैशन के साथ अपने स्क्रिप्ट धावक लिखने में मदद करता है।

डीबीअप एक .NET लाइब्रेरी है जो आपको SQL सर्वर डेटाबेस में परिवर्तनों को तैनात करने में मदद करता है। यह ट्रैक करता है कि कौन सी एसक्यूएल स्क्रिप्ट पहले ही चल चुकी हैं, और आपके डेटाबेस को अद्यतित करने के लिए आवश्यक परिवर्तन स्क्रिप्ट्स चलाती है।

हम फाइल सिस्टम में फ़ोल्डर से स्क्रिप्ट चला सकते हैं या आप उन्हें अपनी असेंबली में एम्बेड कर सकते हैं और उन्हें एम्बेडेड स्क्रिप्ट के रूप में चला सकते हैं।

आप github पर उनके कोड भंडार पर अधिक जानकारी और नमूना पा सकते हैं।

http://dbup.github.com