PowerShell में SQLCMD के माध्यम से LocalDB से कनेक्ट करें


11

मैं SQLSMD उपयोगिता के साथ PowerShell के माध्यम से अपने कंप्यूटर पर "localdb \ MSSQLLocalDB" सर्वर तक पहुंचने का प्रयास कर रहा हूं। मैं PowerShell v5, .NET v5.0 का उपयोग कर रहा हूं और (localdb)\MSSQLLocalDBजब मैं इसे Microsoft SQL Server प्रबंधन स्टूडियो 2014 में कनेक्ट करता हूं तो सर्वर का नाम होता है ।

PS C:\> sqlcmd -S localdb\MSSQLLocalDBऔर PS C:\> sqlcmd -S .\localdb\MSSQLLocalDBइस त्रुटि के परिणामस्वरूप:

Sqlcmd: त्रुटि: Microsoft ODBC ड्राइवर 11 SQL सर्वर के लिए: SQL सर्वर नेटवर्क इंटरफेस: सर्वर / इंस्टेंस निर्दिष्ट त्रुटि त्रुटि [xFFFFFFFF]।

मैंने प्रबंधन स्टूडियो में सर्वर का नाम दिया और इसके SELECT @@ServerNameबाद के -Sकमांड में प्रयोग किया और वही त्रुटि मिली।

PS C:\> sqlcmd -S localdb यह त्रुटि देता है:

Sqlcmd: त्रुटि: Microsoft ODBC ड्राइवर 11 SQL सर्वर के लिए: नामित पाइप प्रदाता: SQL सर्वर से कनेक्शन नहीं खोल सकता [53]

अन्य नोट: मैं सर्वर से कनेक्ट करने में सक्षम हूं और इस कनेक्शन के साथ उपयोग करके C # कंसोल ऐप में testdb01 नामक डेटाबेस के साथ काम कर सकता हूंSystem.Data.SqlClient :

"Data Source=(localdb)\\mssqllocaldb;Initial Catalog=testdb01;Integrated Security=SSPI;"

जवाबों:


9

इंस्टेंस नाम का आवरण कोई फर्क नहीं पड़ता।

आपको प्रयास करने की आवश्यकता है:

sqlcmd -S "(localdb)\MSSQLLocalDB" -d testdb01

"लोकलडब" भाग को कोष्ठक में संलग्न किया जाना आवश्यक है क्योंकि यह एक विशेष वाक्यविन्यास है जो SQL सर्वर एक्सप्रेस LocalDB- विशिष्ट API को इंगित करता है जो कनेक्शन स्ट्रिंग में संदर्भित होने पर स्वत: आवृत्ति स्टार्ट-अप के लिए अनुमति देता है। पूरे उदाहरण के नाम को दोहरे उद्धरण चिह्नों में संलग्न करने की आवश्यकता है। ऊपर दिखाई गई कमांड-लाइन मेरे लिए काम करती है, कम से कम पॉवरशेल के बाहर।


(localdb)कोष्ठक में शामिल करने से ऐसा लगता है कि यह इसे एक कमांड के रूप में अलग करता है, और यह निम्न त्रुटि देता है: 'लोकलडब' शब्द को एक cmdlet, फ़ंक्शन, स्क्रिप्ट फ़ाइल या ऑपरेबल प्रोग्राम के नाम के रूप में मान्यता प्राप्त नहीं है।
jmk22 18

@ jmk22 फिर पूरे सर्वर नाम को दोहरे-उद्धरणों में डालने का प्रयास करें -S "(localdb)\MSSQLLocalDB":। अगर वह काम नहीं करता है तो हम कोष्ठक से बचने की कोशिश कर सकते हैं। लेकिन किसी भी तरह उन लोगों को वहां रहने की जरूरत है।
सोलोमन रुट्ज़की

1
उद्धरण यह किया, धन्यवाद! मैंने इसे दर्शाने के लिए आपके उत्तर को संपादित कर दिया है।
jmk22
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.