2012-02-02 30 views
6

मैंने सब कुछ करने की कोशिश की है लेकिन मैं अपने डेटाबेस को एक्सेस/बदल/संशोधित नहीं कर सकता। मैंने इसे एमडीएफ के साथ विजुअल स्टूडियो में बनाया है। मैं SQL डेटाबेस का उपयोग करने में नया हूं इसलिए यदि आप मेरी मदद कर सकते हैं तो मुझे खुशी होगी। जैसा कि मैंने कहा, मैंने विजुअल स्टूडियो में वह डेटाबेस बनाया है, लेकिन मैं उस डेटाबेस के साथ कनेक्शन नहीं बना सकता।.mdf डेटाबेस से कनेक्ट नहीं हो सकता

वेब config में:

<connectionStrings> 
    <add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|Database.mdf;Integrated Security=True;" 
     providerName="System.Data.SqlClient" /> 
    </connectionStrings> 

सीएस में मुझे लगता है कि एसक्यूएल कनेक्शन स्ट्रिंग का प्रयोग किया:

SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDBFilename=|DataDirectory|Database.mdf;Integrated Security=True;"); 

और मैं यह त्रुटि है:

एक संलग्न करने के लिए एक ऑटो-नाम का प्रयास फ़ाइल सी के लिए डेटाबेस: \ उपयोगकर्ता \ mcan \ दस्तावेज़ \ विजुअल स्टूडियो 2010 \ WebSites \ WebSite1 \ App_Data \ Database.mdf विफल। एक ही नाम वाला डेटाबेस मौजूद है, या निर्दिष्ट फ़ाइल खोला नहीं जा सकता है, या यह यूएनसी शेयर पर स्थित है।

वेब config में:

<connectionStrings> 
<add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=|DataDirectory|Database.mdf;Integrated Security=True;" 
    providerName="System.Data.SqlClient" /> 

व शर्तों में:


मैं कुछ परिवर्तन किए हैं

SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Initial Catalog=|DataDirectory|Database.mdf;Integrated Security=True;"); 

अब यह है कि त्रुटि देता है :

*Server Error in '/WebSite1' Application. Cannot open database |DataDirectory|Database.mdf" requested by the login. The login failed. Login failed for user 'mcan-PC\mcan'. * 
+0

क्या आपने संदेश पढ़ा था? – SLaks

+0

@ स्लक्स - क्या तुमने? संदेश में 3 संभावनाएं हैं। आपका जवाब एक मानता है। –

+0

@ मार्टिनस्मिथ: यह यूएनसी शेयर नहीं है, और उसने कहा कि उसने पहले से ही फाइल बनाई है। – SLaks

उत्तर

2

त्रुटि स्पष्ट रूप से बताती है कि डेटाबेस पहले ही SQL सर्वर से कनेक्ट है।
आपके पास एक ही सर्वर पर एक ही नाम के साथ दो डेटाबेस नहीं हो सकते हैं।

+0

मैं बस एक ही स्थान से उस डेटाबेस तक पहुंचने का प्रयास करता हूं, दूसरा कनेक्शन क्यों है? मैं इसे एक्सेस और संशोधित नहीं कर सकता, मुझे तब क्या करना चाहिए? –

+0

डेटाबेस पहले से ही SQL सर्वर में है। आपको इसे SQL सर्वर से हटा देना चाहिए या इसे फिर से संलग्न करने की कोशिश करने के बजाय नाम से कनेक्ट करना चाहिए। – SLaks

+0

क्या आप नाम से उससे जुड़ने का तरीका बता सकते हैं? –

1

समस्या यह हो सकती है कि आपकी एमडीएफ फ़ाइल में प्रमाणीकृत उपयोगकर्ताओं के लिए अनुमतियां सेट न हों। अपनी .mdf फ़ाइल पर नेविगेट करें, राइट क्लिक करें और गुण टैब पर सुरक्षा टैब पर जाएं। जांचें कि प्रमाणीकृत उपयोगकर्ता 'समूह या उपयोगकर्ता नाम' में प्रकट होते हैं या नहीं। यदि ऐसा नहीं होता है तो आपको संपादित करें पर क्लिक करना होगा और प्रमाणीकृत उपयोगकर्ताओं में टाइप करना होगा। फिर आप चेक नाम और ठीक हिट करेंगे। इसके बाद प्रमाणीकृत उपयोगकर्ताओं के लिए पूर्ण नियंत्रण सक्षम करें। आपको इसे .ldf फ़ाइल के लिए भी दोहराना होगा।

+0

मैंने चेक किया है और प्रमाणीकृत उपयोगकर्ता 'समूह या उपयोगकर्ता नाम' में दिखाई देते हैं। –

+0

जब आप प्रमाणीकृत उपयोगकर्ता चुनते हैं और अनुमति सूची के अंतर्गत देखते हैं, तो कॉलम को अनुमति दें के तहत पूर्ण नियंत्रण चेक किया गया है? – huel

+0

हां, सिस्टम, मैकन-पीसी \ mcan और mcan-PC \ Administrators है, मालिक mcan-PC \ mcan है, और उनके पास कॉलम को अनुमति देने के तहत पूर्ण नियंत्रण चेक किया गया है –

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