SQL सर्वर पर ASP.NET में कनेक्शन स्ट्रिंग की स्थापना


96

मैं अपने web.config फ़ाइल (Visual Studio 2008 / ASP.NET 3.5) में एक स्थानीय सर्वर (SQL सर्वर 2008) से कनेक्टिंग स्ट्रिंग स्थापित करने का प्रयास कर रहा हूं।

मेरे web.config में, मैं कनेक्शन स्ट्रिंग कैसे और कहाँ रखूँ?

यहाँ अभी web.config फ़ाइल कैसी दिखती है: http://imwired.net/aspnet/Online_web.config

जवाबों:


148

आप इसका उपयोग भी कर सकते हैं, यह सरल है। केवल एक चीज जिसे आपको सेट करने की आवश्यकता है, वह है "YourDataBaseName"।

  <connectionStrings>
    <add name="ConnStringDb1" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
  </connectionStrings>

कनेक्शन स्ट्रिंग कहां रखें

<?xml version='1.0' encoding='utf-8'?>  
  <configuration>  
    <connectionStrings>  
      <clear />  
      <add name="Name"   
       providerName="System.Data.ProviderName"   
       connectionString="Valid Connection String;" />  
    </connectionStrings>  
  </configuration>  

जब मैं कुछ क्वेरी निष्पादित करना चाहता हूं, तो मेरे सी # कोड में इसका उपयोग कैसे करें।
निखिल ताम्हणकर

1
आप डॉट नेट में कनेक्शन स्ट्रिंग के बारे में जानकारी देख सकते हैं: connectionstrings.com/sql-server-2008
विमल भट्ट

4
मुझे आश्चर्य है कि कितने लोगों ने उस लाइन को कॉपी और पेस्ट किया है ... :-) मुझे लगता है कि यह 30 वीं बार है जब मैं इस सवाल पर आया हूं .... शायद मुझे इसे बस दिल से सीखना चाहिए।
आयो अदिसिना

यह संस्करण उपयोगकर्ता नाम / पासवर्ड विशेषताओं को याद कर रहा है।
बर्गी

@Burgi नहीं इसकी याद नहीं है कि (देखें Integrated Security=True?), इसकी आवश्यकता नहीं है क्योंकि डेटाबेस उनकी अनुमति से फ़ाइल पढ़ता है - इसे आज़माएं। यही कारण है कि मैं कहता हूं कि यह अधिक सरल है, क्योंकि आपको उन्हें जोड़ने की आवश्यकता नहीं है। यदि आप इसका उपयोग करने में विफल रहते हैं, तो अपना डेटाबेस खोलें और डेटाबेस पर और फ़ाइलों पर सही अनुमति दें
Aristos

107

किसी कारण से मैं यहाँ सरल उत्तर नहीं देखता हूँ।

इसे अपने कोड के शीर्ष पर रखें:

using System.Web.Configuration;
using System.Data.SqlClient; 

इसे Web.Config में डालें:

<connectionStrings >
    <add
         name="myConnectionString" 
         connectionString="Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;"
         providerName="System.Data.SqlClient"/>
</connectionStrings>

और जहां आप कनेक्शन चर सेटअप करना चाहते हैं:

SqlConnection con = new SqlConnection(
    WebConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString);

5
WebConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionStringतकनीकी रूप से अधिक सही हो सकता है।
क्रश

2
मुझे भी जरूरत थी:using System.Data.SqlClient;
nu सदाबहार

21

मुझे इसका उत्तर प्राप्त करना बहुत कठिन लगा, लेकिन अंततः इसका पता लगा लिया। इसलिए मैं नीचे दिए गए चरणों को लिखूंगा।

  1. अपने कनेक्शन स्ट्रिंग को कोड में सेट करने से पहले, सुनिश्चित करें कि आप वास्तव में अपने डेटाबेस तक पहुंच सकते हैं। SSMS (Sql Server Management Studio या यह अन्य डेटाबेस में समतुल्य है) का उपयोग करके डेटाबेस सर्वर में प्रवेश करके स्पष्ट रूप से शुरू करें, यह सुनिश्चित करने के लिए कि आपके पास जो भी विवरण आप उपयोग करने का इरादा रखते हैं, उसका उपयोग हो।

  2. अगला (यदि आवश्यक हो), यदि आप एक अलग सर्वर पर डेटाबेस का उपयोग करने की कोशिश कर रहे हैं, तो सुनिश्चित करें कि आप इसी तरह एसएसएमएस में कर सकते हैं। इसलिए SSMS को कंप्यूटर पर सेटअप करें और सुनिश्चित करें कि आप उस डेटाबेस सर्वर पर उपयोगकर्ता नाम और पासवर्ड के साथ सर्वर तक पहुंच सकते हैं।

यदि आपको उपर्युक्त 2 अधिकार नहीं मिलते हैं, तो आप डेटाबेस को एक्सेस नहीं कर सकते, बस अपना समय बर्बाद कर रहे हैं। यह या तो हो सकता है क्योंकि आपके द्वारा सेटअप किया गया उपयोगकर्ता गलत है, जिसके पास रिमोट एक्सेस सक्षम (यदि आवश्यक हो), या पोर्ट नहीं खोले गए हैं (यदि आवश्यक हो), कई अन्य कारणों से लेकिन ये सबसे आम हैं।

एक बार जब आप सत्यापित कर लेते हैं कि आप SSMS का उपयोग करके डेटाबेस तक पहुँच सकते हैं। अगला कदम, बस प्रक्रिया को स्वचालित करने और गलतियों से बचने के लिए, सिस्टम को आपके लिए काम करने देना है।

  1. एक रिक्त परियोजना शुरू करें, एसक्यूएल या डेटासेट में लाइनक की अपनी पसंद को जोड़ें (ईएफ अच्छा है लेकिन कनेक्शन स्ट्रिंग एक ईएफ कोन स्ट्रिंग के अंदर एम्बेडेड है, मैं एक स्वच्छ चाहता हूं), और ऊपर वर्णित विवरणों का उपयोग करके अपने डेटाबेस से कनेक्ट करें। con string wizzard। कोई भी तालिका जोड़ें और फ़ाइल को सहेजें।

अब वेब कॉन्फिग में जाएं, और जादुई तरीके से, आपको अपनी जरूरत के सभी विवरणों के साथ अच्छा साफ काम करने वाला कनेक्शन स्ट्रिंग दिखाई देगा।


{नीचे एक पुरानी पोस्ट का हिस्सा था इसलिए आप इसे अनदेखा कर सकते हैं, मैं इसे संदर्भ के लिए छोड़ देता हूं क्योंकि डेटाबेस को केवल कोड से एक्सेस करने का सबसे बुनियादी तरीका है। कृपया नीचे स्क्रॉल करें और नीचे चरण 2 से जारी रखें। }

निम्नलिखित चरणों को मान लें कि आप कुछ के साथ शुरू करते हैं जैसे कि पीछे के कोड में आपका कनेक्शन स्ट्रिंग:

string conString = "Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;";

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

एक बार जब आप सुनिश्चित हो जाते हैं कि उपरोक्त शैली अगला कदम उठाने के लिए अपना अब समय काम करती है:

1. अपने स्ट्रिंग शाब्दिक (उद्धरण सहित सामान ) वेब के निम्नलिखित अनुभाग में निर्यात करें । फ़ाइल (कई कनेक्शन स्ट्रिंग्स के लिए, बस कई पंक्तियाँ करें:

<configuration>
    <connectionStrings>
        <add name="conString" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
        <add name="conString2" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
        <add name="conString3" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
    </connectionStrings>
</configuration>

{ऊपर एक पुरानी पोस्ट का हिस्सा था, शीर्ष 3 चरणों को करने के बाद यह पूरी प्रक्रिया आपके लिए की जाएगी, इसलिए आप इसे अनदेखा कर सकते हैं। मैं इसे केवल अपने संदर्भ के लिए यहां छोड़ता हूं। }


2. अब कोड की निम्न पंक्ति को C # कोड के पीछे जोड़ दें, पूर्व में बस वर्ग परिभाषा के तहत (अर्थात एक विधि के अंदर नहीं)। यह आपके प्रोजेक्ट के रूट फ़ोल्डर को इंगित करता है। अनिवार्य रूप से यह परियोजना का नाम है। यह आमतौर पर web.config फ़ाइल का स्थान है (इस मामले में मेरी परियोजना को MyProject कहा जाता है।

static Configuration rootWebConfig = WebConfigurationManager.OpenWebConfiguration("/MyProject");

3. अब कोड की निम्न पंक्ति को C # कोड के पीछे जोड़ दें। यह आपके लिए एक स्ट्रिंग स्थिरांक सेट करता है, जिसे आप अपने कोड में कई स्थानों पर संदर्भित कर सकते हैं, आपको अलग-अलग तरीकों से एक conString की आवश्यकता होनी चाहिए।

const string CONSTRINGNAME = "conString";

4. इसके बाद C # कोड के पीछे कोड की निम्न पंक्ति जोड़ें। इसे web.config फ़ाइल से कनेक्शन स्ट्रिंग नाम के साथ मिलती है, जिसका नाम है ConString (ऊपर स्थिर से)

ConnectionStringSettings conString = rootWebConfig.ConnectionStrings.ConnectionStrings[CONSTRINGNAME];

5. अंत में, जहां आप मूल रूप से कोड की इस पंक्ति के समान कुछ होगा:

SqlConnection con = new SqlConnection(conString)

आप इसे कोड की इस पंक्ति से बदल देंगे:

SqlConnection con = new SqlConnection(conString.ConnectionString)

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

मैं C #, ASP.Net और Sql सर्वर में नया हूं। इसलिए मुझे यकीन है कि इस कोड को करने का एक बेहतर तरीका होना चाहिए। यदि संभव हो तो इन चरणों को कैसे सुधारें, इस बारे में मैं भी प्रतिक्रिया दूंगा। मैंने कुछ इस तरह से देखा है, लेकिन मैंने आखिरकार कई हफ्तों की कड़ी मेहनत के बाद इसका पता लगा लिया। खुद को देखते हुए, मुझे अभी भी लगता है, एक आसान तरीका होना चाहिए।

मुझे आशा है कि यह मददगार है।


14

यह <configuration>नोड के भीतर होना चाहिए :

  <connectionStrings >
    <add name="myconnectionstring" connectionString="Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;" providerName="System.Data.SqlClient"/>
  </connectionStrings>

इस साइट पर इसके बारे में अधिक जानकारी है:


1
जब मैं asp.net 4 में कुछ क्वेरी निष्पादित करना चाहता हूं, तो इसके पीछे मेरे C # कोड में इसका उपयोग कैसे करें
निखिल ताम्हणकर

7

WebConfig में कनेक्शन

फ़ाइल <connectionStrings>में तत्व में अपना कनेक्शन स्ट्रिंग जोड़ें Web.config

<connectionStrings>
<add name="ConnectionString" connectionString="Data Source=192.168.1.25;Initial Catalog=Login;Persist Security Info=True;User ID=sa;Password=example.com"   providerName="System.Data.SqlClient" />
</connectionStrings>

कक्षा में

public static string ConnectionString{
get{
return ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;}
set{}

6

हेडर में

using System.Configuration;

कोड में

SqlConnection conn = new SqlConnection(*ConfigurationManager.ConnectionStrings["connstrname"].ConnectionString*);

3

आप कनेक्शन स्ट्रिंग्स अनुभाग को निर्दिष्ट करने के लिए बाहरी कॉन्फ़िगरेशन फ़ाइल का उपयोग कर सकते हैं, और उस फ़ाइल को एप्लिकेशन कॉन्फ़िगरेशन फ़ाइल में संदर्भित कर सकते हैं जैसे कि web.config

web.configफ़ाइल में पसंद है :

<configuration>  
    <connectionStrings configSource="connections.config"/>  
</configuration>  

बाहरी कॉन्फ़िगरेशन connections.configफ़ाइल में कनेक्शन अनुभाग होगा

<connectionStrings>  
  <add name="Name"   
   providerName="System.Data.ProviderName"   
   connectionString="Valid Connection String;" />  

</connectionStrings>  

बाहरी कॉन्फ़िगरेशन फ़ाइल की संशोधित सामग्री एप्लिकेशन को पुनरारंभ नहीं करेगी (जैसा कि ASP.net डिफ़ॉल्ट रूप से एप्लिकेशन कॉन्फ़िगरेशन फ़ाइलों में किसी भी परिवर्तन के साथ करता है)


2

यदि आप Web.config में कनेक्शन स्ट्रिंग लिखना चाहते हैं तो दिए गए स्टिंग के तहत लिखें

<connectionStrings>
  <add name="Conn" connectionString="Data Source=192.168.1.25;Initial Catalog=Login;Persist Security Info=True;User ID=sa;Password=example.com"
   providerName="System.Data.SqlClient" />
 </connectionStrings>

या

आप जैसे aspx.cs फ़ाइल में सही हैं

SqlConnection conn = new SqlConnection("Data Source=12.16.1.25;Initial Catalog=Login;Persist Security Info=True;User ID=sa;Password=example.com");

2

आप इसे अपनी web.configफ़ाइल में रख सकते हैं connectionStrings:

<add name="myConnectionString" connectionString="Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;" providerName="System.Data.SqlClient"/>

2

आप निम्न प्रारूप का उपयोग कर सकते हैं:

  <connectionStrings>
    <add name="ConStringBDName" connectionString="Data Source=serverpath;Initial Catalog=YourDataBaseName;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
  </connectionStrings>

संभवत: आप इसके बाद web.config में कनेक्शन टैग टैग करेंगे <appSettings>

इसे आज़माएं।


1

आप यह कोशिश कर सकते हैं। यह बहुत ही सरल है

<connectionStrings>         
    <add name="conString" connectionString="Data Source=SQLServerAddress;Initial Catalog=YourDatabaseName; User Id=SQLServerLoginId; Password=SQLServerPassword"/>
</connectionStrings>

ओपी ने पूछा "web.config में कहां"।
स्टीव स्मिथ

0

अपने कनेक्शन स्ट्रिंग के लिए यह प्रयास करें।

 Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
 User ID=myDomain\myUsername;Password=myPassword;

ढेर अतिप्रवाह में आपका स्वागत है! जब आप किसी पुराने प्रश्न का उत्तर देते हैं, तो कुछ संदर्भ जोड़ना अच्छा होता है, क्योंकि आपका उत्तर पुराने की तुलना में बेहतर क्यों है। अन्यथा यह जवाबों की सूची में सबसे नीचे नजरअंदाज किए जाने का जोखिम है।
मोनोलो

0

मुझे अभी मिला!! आपको इस स्ट्रिंग कनेक्शन को लगाने और सीधे अपने डेटाबेस में इंगित करने की आवश्यकता है । सर्वर पर एक ही मामला।

"Provider=Microsoft.ACE.OLEDB.12.0; 
 Data Source=c:/inetpub/wwwroot/TEST/data/data.mdb;"

यह काम करता हैं!! :)


0

Web.config में स्टोर कनेक्शन स्ट्रिंग

यह आपके कोड में एक हार्ड कोडित स्ट्रिंग के बजाय एक कॉन्फिग फ़ाइल में आपके एप्लिकेशन के लिए कनेक्शन स्ट्रिंग को स्टोर करने के लिए एक अच्छा अभ्यास है। ऐसा करने का तरीका .NET 2.0 और .NET 3.5 (और ऊपर) के बीच भिन्न होता है। यह लेख दोनों को कवर करता है। https://www.connectionstrings.com/store-connection-string-in-webconfig/


-1

<connectionStrings></connectionStrings>अपने web.configअंदर बुलाया एक खंड बनाएँ, <configuration></configuration>फिर इसके लिए विभिन्न कनेक्शन स्ट्रिंग्स जोड़ें

<configuration>

  <connectionStrings>
   <add name="ConnectionStringName" providerName="System.Data.SqlClient" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=DatabaseName;Integrated Security=True;MultipleActiveResultSets=True"/>
  </connectionStrings>

</configuration>

यहां सभी विभिन्न कनेक्शन स्ट्रिंग स्वरूपों की एक सूची दी गई है https://msdn.microsoft.com/en-us/library/jj653752(v=vs.110).aspx


"अपने web.config में <कनेक्शनस्ट्रीम> </ कनेक्शनस्ट्रीम> नामक एक अनुभाग बनाएं - जहां web.config में है?
स्टीव स्मिथ

"कॉन्फ़िगरेशन" टैग का बच्चा, अधिक जानकारी docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/…
लड़के
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.