अद्यतन करना मैं एक एमएस एसक्यूएल सर्वर डीबी का उपयोग कर रहा हूं और बहुत सारे विचारों का उपयोग करता हूं (ओ/आर मैपर के साथ उपयोग के लिए)। एक छोटी सी झुंझलाहट है कि मैं चाहता हूँ हैस्कीमाइंडिंग का उपयोग करते समय डीबी स्कीमा अपडेट को कैसे संभालना है और अक्सर
- उपयोग स्कीमा लिपियों
(सर्वर पर तैनाती और स्रोत नियंत्रण प्रणाली में डालने के लिए), लेकिन इस मुद्दे में चलाने के साथ बंधन
क्या इसे संभालने का कोई बेहतर तरीका है?
मुझे अभी भी सरल और स्रोत-नियंत्रणीय एसक्यूएल अपडेट का उपयोग करने में सक्षम होना चाहिए। SQL सर्वर प्रबंधन स्टूडियो में शामिल कोड जनरेटर सहायक होगा, लेकिन मुझे SQL सर्वर प्रबंधन स्टूडियो के साथ समस्याएं थीं, जिसमें यह कोड बनाने के लिए होता है जो कुछ इंडेक्स या (डिफ़ॉल्ट) बाधाओं के नाम निर्दिष्ट नहीं करता है। लेकिन जब मैं विभिन्न बाधाओं के नाम सहित विभिन्न प्रणालियों पर अपनी स्क्रिप्ट चलाता हूं, तो मैं समान डीबीएस चाहता हूं, ताकि बाद में उन बाधाओं को अपडेट करते समय मुझे लूप से कूदना पड़े।
तो शायद एक स्मार्ट एसक्यूएल कोड जनरेटर समाधान होगा?
मेरे कार्यप्रवाह अब है: "। cannot ALTER 'XXX' because it is being referenced by object 'YYY'
"
- प्रकार क्वेरी संपादक में
alter table
बयान - जांच अगर मैं की तरह एक त्रुटि बयान मिलता है
- उपयोग एसक्यूएल सर्वर प्रबंधन स्टूडियो स्क्रिप्ट के लिए मुझे संदर्भित वस्तु के लिए
create
कोड - एक
drop
बयान बदलने बयान से पहले डाल सकते हैं और बाद - जांच बयान बनाते हैं
drop
बयान त्रुटि पैदा करता है और दोहराने
यह मुझे परेशान करता है, लेकिन शायद मुझे इसके साथ रहना होगा यदि मैं स्कीमाइंडिंग और स्क्रिप्ट अपडेट का उपयोग करना जारी रखना चाहता हूं ...
ओह, ठीक है। मुझे लगता है कि मैं इसके साथ रहूंगा। आदर्श रूप से मैं क्या चाहता हूं: ए) कोई त्रुटि संदेश नहीं है यदि तालिका अद्यतन वास्तव में विचारों को प्रभावित नहीं करता है (उदाहरण के लिए एक नया कॉलम जोड़ना इस तालिका पर केवल पढ़ने के विचारों को प्रभावित नहीं करेगा) बी) त्रुटि संदेश यदि तालिका अद्यतन दृश्य तोड़ता है (उदाहरण के लिए एक कॉलम ड्रॉप करना जो दृश्य में उपयोग किया जाता है) लेकिन मुझे लगता है कि एमएसएसएलएल सिर्फ उस तरह से काम नहीं करता है (संभवतः अच्छे कारणों के लिए ...) अनुमति अनुस्मारक के लिए धन्यवाद! –