2014-04-11 7 views
5

में समाप्त होने वाला SQL सर्वर 2008 पासवर्ड मान लें कि मेरे पास ऐसा पासवर्ड है जो इस तरह दिखता है: पासवर्ड;एक अर्धविराम

मैं इसे अंतिम चरित्र के रूप में अर्धविराम के साथ काम करने के लिए कैसे प्राप्त कर सकता हूं। पासवर्ड एसएसएमएस और ओडीबीसी में काम करता है, लेकिन कनेक्शन स्ट्रिंग के साथ नहीं। मैंने इसके आसपास " की कोशिश की है लेकिन यह काम नहीं कर रहा है।

<add name="DbConn" connectionString="Data Source=LOCALHOST;Database=MYDB;Trusted_Connection=no;User Id=myuser;Password=password;" providerName="System.Data.SqlClient" /> 

यह एक एएसपी.नेट वेब अनुप्रयोग के लिए है। जहां तक ​​मैं कह सकता हूं, यह असंभव है।

उत्तर

10

मैं SQL Server 2008 R2 से कनेक्ट करने के लिए निम्न कोड का उपयोग कर रहा हूं।

var sqlConnection = new SqlConnection() 
      { 
       ConnectionString = "Server=DT2719MOD;Database=abs2;User Id=TestUserLogon;Password='iloveachallenge;';" 

      }; 
     sqlConnection.Open(); 
     Console.WriteLine(sqlConnection.State); 
     sqlConnection.Close(); 

संपादित करें: इसके अलावा कनेक्शन स्ट्रिंग है कि आप का उपयोग करने की कोशिश की और यह मेरे मशीन पर काम करता है।

ConnectionString="Data Source=DT2719MOD;Database=abs2;Trusted_Connection=no;User Id=TestUserLogon;Password='iloveachallenge;';" 
+0

प्रतिक्रिया के लिए धन्यवाद। मैंने एक नया वेब ऐप बनाया और आपके समाधान की कोशिश की और यह काम किया। मेरे मुख्य ऐप में वही उपयोगकर्ता/पीडब्ल्यू काम नहीं करता था, इसलिए अब मुझे यह पता लगाने की जरूरत है कि वहां क्या हो रहा है। लेकिन अब मुझे पता है कि यह संभव है। – smoore4

+1

1k। अब बधाई! – smoore4

+0

यदि आपके पास विशेषता के बजाय '' तत्वों के साथ 'स्ट्रिंगकनेक्शन' है, तो यह विधि काम करती है। ' <पैरामीटर नाम =" डेटा स्रोत "मान =" 1.2.3.4 "isSensitive =" false "/> <पैरामीटर नाम =" प्रारंभिक सूची "मान =" MyCATALOG " isSensitive = "false" /> <पैरामीटर नाम = "पासवर्ड" मान = "'MyP4 $$ W0rD;'" is संवेदनशील = "true" /> <पैरामीटर नाम = "उपयोगकर्ता आईडी" मान = "myUserName" संवेदनशील = "झूठा" /> ' – 3d0

4

अर्धविराम, सिंगल-कोट वर्ण या डबल-कोट वर्ण वाले मानों को शामिल करने के लिए, मान को डबल कोट्स में संलग्न किया जाना चाहिए।

से: http://msdn.microsoft.com/en-us/library/windows/desktop/ms722656(v=vs.85).aspx

मूल रूप से आप सभी एक कनेक्शन स्ट्रिंग के भागने प्रक्रियाओं की है।

+1

मैं इन सब की कोशिश की है:

initial catalog=myDB;UserId=MyUser;Password=abc;123;multipleactiveresultsets=True; 

बनने के लिए की जरूरत है। मैं वास्तव में किसी को इस तरह का पासवर्ड बनाने और कनेक्शन स्ट्रिंग से कनेक्ट करने के लिए चुनौती देता हूं। मुझे लगता है कि यह असंभव है। – smoore4

1

हां, यह संभव है। इस सवाल का जवाब इस सूत्र में पीट जवाब में दी गई है: Escape ;(semicolon) in odbc connection string in app.config file

मूल रूप से, आप के आसपास उपयोगकर्ता नाम/पासवर्ड क्षेत्रों, नहीं वे वर्ण जो आप से बचने के लिए है, जो है जहाँ मैं गलत हो रहा था चाहते एकल उद्धरण डाल करने के लिए की जरूरत है।

पीट उदाहरण चोरी करने के लिए:

initial catalog=myDB;UserId='MyUser';Password='abc;123';multipleactiveresultsets=True; 
संबंधित मुद्दे