आप जीवन बीमा कंपनी में SQL सर्वर डेवलपर के रूप में कार्य कर रहे हैं। उनके पास डेटाबेस नाम TechBrothersIT है और जिस स्कीमा नाम का उपयोग ऑब्जेक्ट कर रहे हैं उनमें से एक TB है। उन्होंने आपको स्कीमा का नाम बदलकर LIFE करने का काम दिया है। आप यह कैसे करेंगे?
समाधान:
SQL सर्वर डेटाबेस में किसी स्कीमा का नाम बदलने का कोई सीधा तरीका नहीं है। यह परिवर्तन करने के लिए हमें नीचे दिए गए चरणों का पालन करना होगा।चरण 1:एक नई स्कीमा बनाएं LIFE नाम के साथ एक नई स्कीमा बनाएं, हम नीचे दी गई स्क्रिप्ट का उपयोग कर सकते हैं।
स्कीमा बनाएं [LIFE]चरण 2:ऑब्जेक्ट को नई स्कीमा में स्थानांतरित करें। हम नीचे दी गई स्क्रिप्ट का उपयोग एकल ऑब्जेक्ट (तालिका, दृश्य, संग्रहीत प्रक्रिया आदि) को नई स्कीमा में स्थानांतरित करने के लिए कर सकते हैं।
DatabaseALTER SCHEMA NewSchemaTransfer OldSchema.ObjectNameGOका उपयोग करें
मान लें कि मेरे पास टीबी स्कीमा में एक टेबल है और मैं लाइफ स्कीमा में जाने के लिए नीचे दी गई स्क्रिप्ट का उपयोग कर सकता हूं।
स्कीमा बदलें [लाइफ] टीबी ट्रांसफर करें।[टेस्ट];
उपरोक्त क्वेरी को प्रत्येक वस्तु के लिए टीबी स्कीमा से LIFE स्कीमा में स्थानांतरित करने के लिए दोहराया जाना है। एक स्कीमा से दूसरे में वस्तुओं को स्थानांतरित करने के लिए डेटाबेस में अन्य ऑब्जेक्ट्स के लिए हमारी ऑल्टर क्वेरी उत्पन्न करने के लिए हम नीचे चुनिंदा क्वेरी का उपयोग कर सकते हैं। )SET @SourceSchema='TB'SET @DestinationSchema='LIFE'Select 'Alter Schema ['+@DestinationSchema+'] Transfer '
+@SourceSchema+'.['+name+']'
sys.objects से schema_name(schema_id)=@SourceSchema@SourceSchema और @DestinationSchema वैरिएबल मान प्रदान करें और क्वेरी आपके लिए Alter स्टेटमेंट जेनरेट करेगी। अपनी क्वेरी विंडो में कॉपी करें और चलाएं।
नोट: UAT और उत्पादन परिवेश में चलाने से पहले सुनिश्चित करें कि आप विकास परिवेश में हुए परिवर्तनों का परीक्षण कर लें।
वीडियो डेमो:एक स्कीमा से वस्तुओं को कैसे स्थानांतरित करें SQL सर्वर में अन्य के लिए