2010-08-27 22 views
9

आप वेब अनुप्रयोग के विकास को कैसे डिज़ाइन और प्रबंधित करते हैं जो एकाधिक डेटाबेस प्रबंधन प्रणाली जैसे ओरेकल और एमएस एसक्यूएल सर्वर के साथ संगत होना चाहिए?एकाधिक डेटाबेस प्रबंधन प्रणालियों के साथ संगत वेब अनुप्रयोग को विकसित करने के लिए कैसे करें

यदि आप एनएचबीरनेट या ईएफ जैसे ओआरएम का उपयोग नहीं कर सकते हैं, तो आप विकास के दौरान डेटाबेस स्कीमा कैसे बनाए रखते हैं?

मेरा दृष्टिकोण अब एसक्यूएल सर्वर पर विकास डेटाबेस होना है और इसे टेस्ट पैच जारी करने से पहले ओरेकल (एक उपकरण के साथ) को पोर्ट करने के लिए, दोनों rdbms पर सॉफ़्टवेयर का परीक्षण करने के लिए है। (टूल डेटाबेस को अपग्रेड करने के लिए एप्लिकेशन द्वारा उपयोग की जाने वाली फ़ाइल भी उत्पन्न करता है)

क्या यह एक अच्छा दृष्टिकोण है? विजुअल स्टूडियो के डेटाबेस प्रोजेक्ट के बारे में क्या, यह मेरे डीबी स्कीमा को रखने का एक बेहतर तरीका हो सकता है?

संपादित करें: यह सवाल नहीं आवेदन की वास्तुकला को डिजाइन करने के बारे में है (मैं पहले से ही एक सार डेटा का उपयोग परत है), लेकिन कैसे विकास के दौरान RDBMS के विभिन्न प्रकार के लिए डेटाबेस स्कीमा बनाए रखने के लिए।

उत्तर

5

मॉडल संचालित आर्किटेक्चर (एमडीए): अपने डेटाबेस स्कीमा को डिज़ाइन करने के लिए एक सामान्य Database modelling tool का उपयोग करें। आप टेबल/रिश्तों/प्राथमिक कुंजी/आदि को परिभाषित करते हैं। एक सामान्य फैशन में और उसके बाद डिजाइनर आवश्यक SQL स्क्रिप्ट उत्पन्न करता है (डेटाबेस के विभिन्न प्रकार के लिए सबसे अधिक समर्थन आउटपुट)। जैसे ही आप डीबी मॉडल बदलते हैं, टूल डेटाबेस को अद्यतन करने के लिए आवश्यक SQL कोड उत्पन्न करेगा, या इसे स्क्रैच से उत्पन्न करेगा। उपकरण कई अन्य चीजों के साथ दस्तावेज उत्पन्न करने और डेटाबेस संस्करण के साथ सहायता करने में भी सहायता करते हैं ...

मैं Context Database Designer का उपयोग करता हूं और उपकरण और मूल्य के साथ असाधारण रूप से खुश हूं। Enterprise Architect क्षमता उत्पन्न करने और रिवर्स-इंजीनियर कोड के साथ एक उत्कृष्ट उपकरण की तरह दिखता है।

+0

+1 के डेटाबेस स्कीमा को कैसे बनाए रखना है, आपके उत्तर और बहुत उपयोगी लिंक के लिए धन्यवाद – onof

2

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

+0

मेरा प्रश्न सी # कोड के विकास के बारे में नहीं है, लेकिन विभिन्न प्रकार के rdbms – onof

7

मुझे लगता है कि यह कुंजी यह सुनिश्चित करने के लिए है कि आप मानक एसक्यूएल सिंटैक्स पर चिपके रहें। ट्रांजैक्ट एसक्यूएल (टी-एसक्यूएल) के साथ एमएस एसक्यूएल सर्वर जहाजों जो ISO standard SQL का एक सुपर-सेट है, जिसका अर्थ है कि इसमें अतिरिक्त वाक्यविन्यास है जो आधिकारिक तौर पर मानक एसक्यूएल का हिस्सा नहीं है।

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

डेटाबेस प्रोजेक्ट का उपयोग करने का आपका विचार एक अच्छा है। यह आपको अपने डेटाबेस को कई डेटाबेस में जल्दी से तैनात करने और उन्हें स्वचालित रूप से परीक्षण करने की अनुमति देगा।

संबंधित मुद्दे

 संबंधित मुद्दे