24

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

लेकिन यह सक्षम नहीं हो रहा है। कोई मदद कृपया।

मैं वी.एस. 2012 का उपयोग कर रहा एसपी 3, SQL सर्वर 2012 के साथ, त्रुटि सूची में

enter image description here

+0

मैं UserVoice सुझाव (https [ "अद्यतन" और "उत्पन्न अद्यतन स्क्रिप्ट" बटन सक्षम बनाए रखें] वी.एस. बना लिया है।कॉम/फ़ोरम/121,579 विजुअल स्टूडियो-आईडीई/सुझाव/17,396,128-रख-अद्यतन और उत्पन्न अद्यतन-पटकथा बटन)। यदि आप सहमत हैं तो कृपया वोट दें। –

उत्तर

39

चेक अगर आप किसी भी त्रुटि है, मैं वी.एस. में एक गैर मान्यता प्राप्त शब्द है (लेकिन यह में करता है एसक्यूएल सर्वर), मैंने इसे टिप्पणी की, पुनः तुलना की और इसे सफलतापूर्वक सक्षम किया गया।

+2

यह मेरी समस्या थी, हमेशा त्रुटि सूची विंडो की जांच करना याद रखें! :) धन्यवाद @ फ्रांसिस्को जी – kzfabi

+1

सुनिश्चित करें कि परियोजना सेटिंग्स में लक्ष्य संस्करण SQL सर्वर के सही संस्करण के लिए है, तो अपरिचित शब्द नहीं होना चाहिए। – cdonner

+1

एनबी: ऐसा लगता है कि ** कोई भी त्रुटि ** अद्यतन बटन को दिखने से रोकती है; भले ही वे ऑब्जेक्ट्स पर हों जिन्हें आपने अपडेट से बाहर रखा है। – JohnLBevan

1

ऐसा लगता है कि आपके डेटाबेस प्रोजेक्ट में डिफ़ॉल्ट मानों के बिना sqlcmd चर है।

देखें: http://www.andrewburrow.net/vs2012-schema-compare-buttons-disabled/

आशा इस मदद करता है।

+0

इससे मेरी मदद की। धन्यवाद! –

0

हर बार जब आप "स्कीमा तुलना" पर "विकल्प" खोलते हैं तो आपको "अपडेट" बटन को सक्रिय करने के लिए फिर से "तुलना करें" बटन पर क्लिक करना होगा। हालांकि अगर यह पहली बार काम नहीं करता है, तो स्कीमा तुलना फ़ाइल को फिर से बंद करें और दोबारा खोलें।

9

देखें कि क्या आपके पास "चेतावनी" संदेश है, "आंतरिक त्रुटि के कारण तैनाती योजना उत्पन्न नहीं कर सकता"। यदि ऐसा है, तो अद्यतन और जनरेट स्क्रिप्ट बटन अक्षम कर दिए जाएंगे।

विजुअल स्टूडियो बंद करें, डेटाबेस प्रोजेक्ट वाले फ़ोल्डर पर नेविगेट करें और सभी (* .dbmdl) फ़ाइलों को हटा दें। फिर विजुअल स्टूडियो को पुनरारंभ करें, तुलना स्कीमा को फिर से चलाएं जिस बिंदु पर अद्यतन बटन सक्षम होना चाहिए।

+0

यह सही उत्तर नहीं होना चाहिए, लेकिन यह है। धन्यवाद! –

1

वर्कअराउंड:

मेरे मामले में। फिक्सिंग त्रुटि प्राथमिकता कार्य नहीं था। इसके अलावा मुझे त्रुटि सूची में कोई त्रुटि नहीं मिली।

यह सिर्फ आपको स्रोत या लक्ष्य में अपने "विजुअल स्टूडियो डेटाबेस प्रोजेक्ट" का उपयोग नहीं करना है। प्रोजेक्ट का उपयोग करने के बजाय, पहले से ही स्क्रिप्ट का उपयोग करके एक अस्थायी डेटाबेस बनाएं।

इस (या इन) अस्थायी डेटाबेस (स्रोतों) में स्रोत और (या) लक्ष्य में अन्य का चयन करें।

बटन सक्षम होना चाहिए।

मेरे लिए अंतर प्राप्त करने के लिए इस मुद्दे को ठीक करने से कहीं अधिक महत्वपूर्ण था। उम्मीद है कि यह आपकी मदद करता है। कुछ और सुधार के साथ।

+0

यह सहायक उत्तर बेहतर कहा जा सकता है लेकिन यह तब काम करता है जब आपके डेटाबेस में अन्य डेटाबेस में संदर्भ होते हैं और इसकी त्रुटियां उत्पन्न होती हैं। प्रशांत पी कह रहा है कि किसी सर्वर पर किसी डेटाबेस पर डेटाबेस की तुलना करने के बजाय आपके समाधान में डेटाबेस प्रोजेक्ट का उपयोग करने के लिए आप डेटाबेस बनाने के लिए समाधान में डेटाबेस प्रोजेक्ट का उपयोग कर सकते हैं (मैं इसे अपने स्थानीय एसक्यूएल सर्वर इंस्टेंस पर बना देता हूं) और फिर दो की तुलना करें डेटाबेस। – user2721607

+0

हां, लेकिन इस मामले में, यदि आपको वास्तव में आवश्यकता की आवश्यकता है, तो आपको सक्रिय होने के लिए "अपडेट" बटन की ज़रूरत नहीं है। – KarmaEDV

1

मेरे लिए, त्रुटि सूची में कोई त्रुटि दिखाई नहीं दे रही थी। ऐसा इसलिए था क्योंकि मेरे पास "उत्पन्न समस्याएं दिखाएं" ड्रॉप डाउन को "केवल बिल्ड" पर सेट किया गया था; इसे "बिल्ड + इंटेलिसेन्स" में बदलने के लिए मुझे SQL त्रुटियों को देखने की अनुमति दी गई है जिन्हें जेनरेट स्क्रिप्ट और अपडेट बटन सक्षम करने के लिए निश्चित करने की आवश्यकता है।

0

एसएसडीटी में मेरे पास ऐसा मामला था जहां अपडेट बटन सक्षम था लेकिन जेनरेट स्क्रिप्ट सक्षम नहीं थी। ऐसा इसलिए था क्योंकि मेरा गंतव्य स्कीमा मेरा स्थानीय समाधान था (* .sqlproj बनाम प्रोजेक्ट)।

यह मुझ पर भोर करने के लिए कुछ मिनट लग गए कि गंतव्य की जरूरत कोई वास्तविक डेटाबेस सही ढंग से स्क्रिप्ट उत्पन्न करने के लिए किया जाना है। //visualstudio.uservoice:

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