2010-03-15 8 views
11

मैं मतभेदों की एक त्वरित व्याख्या खोजने के लिए नहीं देख सकता, इसलिए मैं समझ सकता हूं कि किस का उपयोग करना है।विजुअल स्टूडियो 'एसक्यूएल सर्वर 2008 सर्वर प्रोजेक्ट' बनाम 'एसक्यूएल सर्वर 2008 डाटाबेस प्रोजेक्ट'?

एक सर्वर के लिए एक डेटाबेस के लिए है? इम यकीन नहीं है कि क्या मतलब है ..

असल में हम एक नई वेब एप्लिकेशन कर रहे हैं और मैं देखना है कि इन परियोजना प्रकार मुझे डीबी ट्रैकिंग कोड/स्कीमा आदि के संदर्भ में की पेशकश कर सकते चाहते हैं ..

+0

तुम दोनों परियोजनाओं क्यों नहीं बनाते हैं और उन पर एक diff करते हैं? –

उत्तर

14

एसक्यूएल सर्वर 2008 प्रोजेक्ट: इसका उपयोग SQL-CLR module बनाने के लिए किया जाता है, उदाहरण के लिए सी # (या वीबीएनईटी) में एक संग्रहित प्रो, एक फ़ंक्शन, एक समग्र इत्यादि बनाएं, जो SQL सर्वर के अंदर चलाया जाएगा।

जब आप ऐसी परियोजना बनाते हैं, और आप समाधान एक्सप्लोरर में "नया आइटम जोड़ें" पर क्लिक करते हैं, तो आपको एक संग्रहीत प्रक्रिया, एक ट्रिगर, एक समग्र, एक उपयोगकर्ता परिभाषित फ़ंक्शन, उपयोगकर्ता- परिभाषित प्रकार या एक सहायक वर्ग। इन सभी को एक .NET असेंबली में संकलित किया जाएगा, जो SQL सर्वर पर तैनात किया जाएगा और SQL-CLR रनटाइम वातावरण में SQL सर्वर के अंदर निष्पादित किया जाएगा।

एसक्यूएल सर्वर डाटाबेस परियोजना: कि केवल एक SQL स्क्रिप्ट का संग्रह बना सकते हैं और हेरफेर डेटाबेस वस्तुओं

एक एसक्यूएल सर्वर डाटाबेस परियोजना में करने के लिए, डेटाबेस के आधार पर चलाने के लिए, आप मूल रूप से केवल SQL स्क्रिप्ट जोड़ने के लिए मिलता है - एसएसएलएल फाइलें। कुछ और नहीं, वास्तव में। तो यह वास्तव में SQL सर्वर 2008 परियोजना प्रकार से काफी अलग है!

+0

यह मुझे लगता है कि मुझे केवल SQL सर्वर डेटाबेस प्रोजेक्ट में दिलचस्पी होगी? चूंकि मैं चाहता हूं कि स्रोत नियंत्रण में तालिका स्कीमा/एसपी को देखने का एक तरीका है। और मैं विभिन्न सर्वरों में परिवर्तनों को धक्का देने की क्षमता चाहता हूं (डीबी परियोजनाएं उस के साथ सहायक हो?) मैंने दोनों के बीच देखा .... ऐसा लगता है कि वें मूर्खतापूर्ण diff ईरेंस 'सर्वर लेवल ऑब्जेक्ट्स' फ़ोल्डर है ... और दोनों के प्रोजेक्ट गुण समान दिखते हैं .. तो .... सर्वर परियोजनाएं कुछ अतिरिक्त खाली फ़ोल्डर्स के साथ डीबी परियोजनाएं प्रतीत होती हैं? – punkouter

+0

मेरा अपडेट देखें - दो वास्तव में ** काफी ** अलग हैं! –

5

यहां उत्तर वास्तव में पोस्ट किए गए प्रश्न का उत्तर नहीं देता है। "एसक्यूएल सर्वर 2008 सर्वर प्रोजेक्ट" "एसक्यूएल सर्वर 2008 डाटाबेस प्रोजेक्ट" दोनों चीजें हैं जो विजुअल स्टूडियो 2008 डेटाबेस संस्करण में मौजूद हैं, लेकिन दुख की बात है कि "एसक्यूएल सर्वर 2008 प्रोजेक्ट" नामक कोई भी नाम नहीं है, जैसा कि उत्तर बताता है, वहां एक " SQL सर्वर प्रोजेक्ट "जो वर्णन से मेल खाता है। इसके अलावा, अब एक परियोजना प्रकार नहीं है जिसे "एसक्यूएल सर्वर डाटाबेस प्रोजेक्ट" कहा जाता है (कम से कम विजुअल स्टूडियो 2008 टीम सूट में नहीं), हालांकि ऊपर दिया गया वर्णन उन पुराने डेटाबेस परियोजनाओं का वर्णन करता है जो वीएस में उपलब्ध एक बिंदु पर थे ।

इसके बारे में सोचने के बाद, मुझे लगता है कि marc_s में डेटाबेस संस्करण नहीं है (अन्यथा डेटा डूड या डीबीप्रो के रूप में जाना जाता है) स्थापित है। यदि मैं गलत हूं तो मुझे सही करों।

एसक्यूएल सर्वर 2008 डेटाबेस प्रोजेक्ट्स और एसक्यूएल सर्वर 2008 सर्वर प्रोजेक्ट मूल रूप से वही काम करते हैं। मुझे उम्मीद थी कि सर्वर प्रोजेक्ट्स का उपयोग इंस्टॉलेशन और कॉन्फ़िगरेशन के लिए किया जाएगा, और एसक्यूएल सर्वर इंस्टेंस के प्रबंधन को बदल दिया जाएगा, जबकि डाटाबेस प्रोजेक्ट्स का इस्तेमाल उनके अंदर अलग-अलग डेटाबेस के लिए किया जाएगा ... लेकिन ऐसा नहीं लगता है । क्या कोई वास्तव में उनके बीच मतभेद निर्धारित करने में सक्षम है?

थोड़ी देर के लिए खेलने के बाद, केवल एक ही अंतर जो मैं खोजने में सक्षम हूं वह यह है कि SQL सर्वर 2008 सर्वर प्रोजेक्ट हमेशा आपके द्वारा नियोजित सर्वर पर मास्टर डेटाबेस पर तैनात होंगे, भले ही आप किस प्रकार का डेटाबेस आयात करते हैं (मास्टर या अन्यथा) जब आप प्रोजेक्ट बनाते हैं। तो उस स्थिति में, डेटाबेस प्रोजेक्ट आपके व्यावसायिक डेटाबेस के लिए हैं जबकि सर्वर प्रोजेक्ट विशेष रूप से उस सर्वर पर मास्टर डेटाबेस के लिए हैं जो आपके व्यावसायिक डेटाबेस रखता है।

संपादित करें: एक छोटे से कठिन VS2008 प्रलेखन परिशोध के बाद, मैं इस विनिर्देश भर में आया था:

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

आप तो एक ही प्रक्रियाओं है कि आप एक स्कीमा परियोजना को तैनात करने के लिए उपयोग का उपयोग करके एक सर्वर परियोजना को तैनात। "

http://msdn.microsoft.com/en-us/library/dd193413.aspx

+0

लेकिन मुझे यह नहीं मिलता कि वास्तविक दुनिया क्या कारण है कि सर्वर परियोजनाएं वास्तव में उपयोगी होंगी ... मेरे पुनर्चक्रण के बाद मैंने पाया कि डाटाबेस परियोजनाएं हमें बस ऐसा लगता है ... संस्करण को हमारे SQL सामान को नियंत्रित करने का एक तरीका ... सर्वर परियोजनाओं के साथ पाने के लिए अतिरिक्त चीजें मुझे समझ में नहीं आता कि यह एक छोटे से ऐप में कैसे व्यावहारिक है ...? – punkouter

+0

मैं सहमत हूं - मैं जो कह सकता हूं उससे, सर्वर प्रोजेक्ट पेश करना केवल उपयोगकर्ता को भ्रमित करने के लिए कार्य करता है। डाटाबेस प्रोजेक्ट पर यह एक बहुत अच्छा ध्वज हो सकता था जिसने इसे तैनाती के लिए मास्टर डीबी को लक्षित करने के लिए बाध्य किया। – bwerks

+1

सर्वर प्रोजेक्ट आपके डेटाबेस प्रोजेक्ट का उपयोग करने के लिए लॉग इन आदि बनाने के लिए है। यही है, सर्वर स्तर की वस्तुओं। डेटाबेस प्रोजेक्ट आपकी टेबल के लिए है, आदि –

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