2010-05-18 17 views
7

है यह "की तरह सर्वर = (स्थानीय) की (स्थानीय) एक सर्वर नाम के साथ ASP.NET में एक एसक्यूएल सर्वर एक्सप्रेस 2008 डेटाबेस से कनेक्ट करने के लिए संभव; एकीकृत सुरक्षा = SSPI ; डेटाबेस = DBNAME "?SQL सर्वर एक्सप्रेस 2008 का उपयोग कर कनेक्शन स्ट्रिंग में (स्थानीय)

मैं एक प्रोजेक्ट पर किसी अन्य डेवलपर के साथ काम कर रहा हूं और वेब.कॉन्फिग के 2 अलग-अलग संस्करण होने के कारण परेशान हो रहा है क्योंकि वह SQL Server 2008 और (स्थानीय) कामों का उपयोग कर रहा है, लेकिन मुझे यह प्रतीत नहीं होता है स्थानीय रूप से SQL सर्वर 2008 एक्सप्रेस के साथ काम करने के लिए।

डेटाबेस मामले में नेट कोड है कि मायने रखती है के रूप में एक ही कंप्यूटर पर स्थित है।

धन्यवाद।

+0

क्या आप सुनिश्चित हैं कि आपका SQL सर्वर एक्सप्रेस स्थापना नामित उदाहरण नहीं है? – PatrickJ

+0

नहीं मुझे यकीन नहीं है। मैं इसे कैसे देखूँगा? –

+0

एसक्यूएल सर्वर एक्सप्रेस इंस्टॉलेशन * हमेशा * नामित हैं। –

उत्तर

1

आप एक उपनाम बनाने के लिए SQL Server Configuration Manager उपकरण का उपयोग कर सकते हैं। उपनाम को अपनी मशीन दोनों पर एक ही नाम दें, और फिर आप अपनी कॉन्फ़िगरेशन फ़ाइलों में उपनाम का संदर्भ दे सकते हैं।

यदि कॉन्फ़िगरेशन मैनेजर उपकरण वास्तव में SQL सर्वर के एक्सप्रेस संस्करण के साथ शामिल किया गया है मैं नहीं जानता, लेकिन यदि नहीं तो आप रजिस्ट्री कुंजी का उपयोग कर सकते हैं (यह अभी भी एक्सप्रेस संस्करण के साथ काम करता है)। बस निम्नलिखित रजिस्ट्री कुंजी उर्फ ​​की स्थापना की और उसके बाद निर्यात करने के लिए अपने सहकर्मी मिलती है:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo

इसके बाद आप अपने स्थानीय कंप्यूटर पर उस कुंजी आयात कर सकते हैं। यदि आप 64-बिट विंडोज़ पर हैं तो चीजें थोड़ा अधिक जटिल हैं (क्योंकि आपको 64-बिट और 32-बिट रजिस्ट्री दोनों में उपनाम सेट करना होगा)।

+0

मैं 64-बिट मशीन पर हूं। SQL सर्वर कॉन्फ़िगरेशन प्रबंधक में मैंने 32-बिट और 64-बिट SQL मूल क्लाइंट 10.0 कॉन्फ़िगरेशन अनुभाग दोनों के तहत एक उपनाम सेट किया है। । तब कनेक्शन स्ट्रिंग मैं निम्नलिखित त्रुटि मिलती है में सर्वर नाम के रूप में है कि अन्य नाम का उपयोग:। "जबकि एसक्यूएल सर्वर के लिए एक कनेक्शन की स्थापना सर्वर नहीं मिला या पहुंच में नहीं था एक नेटवर्क से संबंधित या उदाहरण के विशेष त्रुटि हुई सत्यापित करें उदाहरण के नाम सही है कि और कहा कि SQL सर्वर दूरस्थ कनेक्शन की अनुमति के लिए कॉन्फ़िगर किया गया है (प्रदाता: SQL नेटवर्क इंटरफेस, त्रुटि: 26 - त्रुटि सर्वर/उल्लेख निर्दिष्ट) " –

+0

तो एक और अधिक जानकारी मुझे लगता है कि पैदा करने के लिए मदद कर रहा है की बिट। मुझे समस्या यह है कि मेरे पास एक ही मशीन पर 2005 का एक पूर्ण संस्करण स्थापित है।जब मैं एसएसएमएस में जाता हूं और (स्थानीय) से कनेक्ट करता हूं तो यह मुझे 2005 के उदाहरण में ले जा रहा है। मैंने यह भी देखा कि जब मैं अपने 2005 के उदाहरण के लिए SQL सर्वर कॉन्फ़िगरेशन प्रबंधक पर जाता हूं तो अब भी उपनाम सूचीबद्ध है। मुझे लगता है कि 2005 की स्थापना रद्द करने से मेरी समस्याएं हल हो सकती हैं। –

+0

उपनाम स्थापित करने के बारे में एक और युक्ति ... यदि यह लोकलहोस्ट है, तो आप प्रोटोकॉल के लिए "नामांकित पाइप्स" का उपयोग कर सकते हैं। यह मेरे लिए काम करता था, जबकि प्रोटोकॉल को सक्षम करने के बाद भी मुझे काम करने के लिए टीसीपी प्रोटोकॉल नहीं मिल सका। –

4

मान लिया जाये कि आप दोनों एसक्यूएल एक्सप्रेस डिफ़ॉल्ट उदाहरण के नाम "SQLEXPRESS" के साथ स्थापित किया है, तो आप 1 कनेक्शन स्ट्रिंग हो सकता है जैसे: "।"

server=.\SQLEXPRESS;integrated security=SSPI;database=DBNAME 

स्थानीय स्ट्रिंग का प्रतिनिधित्व करने के लिए कनेक्शन स्ट्रिंग में का उपयोग किया जाता है।

+0

मैं इसे अपने उत्तर के रूप में पोस्ट करूंगा लेकिन ऐसा लगता है कि वालेस पहले यहां आए थे। – War