Veritabanından bağlantı dizesi nasıl alınır


197

SQL Server Management Studio ile bir veritabanı oluşturdum, şimdi C # uygulamamda kullanmak istiyorum. Bağlantı dizesine ihtiyacım var?

Bağlantı dizesini nerede bulabilirim ve veritabanım nerede depolanıyor?

Bunu yayınlamak zorunda mıyım yoksa böyle bir şey mi var yoksa belgelerimde bir yerlerde mi var?

using (var conn = new SqlConnection("your connection string to the database"))

Bağlantı dizesini nasıl edinebilirim ? Yukarıdaki bölüme yapıştırmak için bağlantı dizesini nerede bulabilirim?

Visual Studio'nun alabilmesi için veritabanımı nasıl yayımlarım? O zaman orada bağlantı dizesini çekebilir miyim?


Nasıl bağlantı dizesi oluşturmak için bir göz atın youtu.be/1WgO7CDSmu8
anomepani

Yanıtlar:


201

Bağlantı dizesini almanın en kolay yolu, Visual Studio'da (menü görünümü , Sunucu Gezgini ) "Sunucu Gezgini" penceresini kullanmak ve bu pencereden sunucuya bağlanmaktır.

Ardından, bağlantı dizesini bağlı sunucunun özelliklerinde görebilirsiniz (bağlantıyı seçin ve F4 veya Alt + Enter tuşlarına basın veya sağ tıklama menüsünde Özellikler'i seçin).

Gelişmiş bağlantı dizesi ayarları: bağlantı oluştururken, "Gelişmiş ..." düğmesinin altındaki "Gelişmiş ..." düğmesini tıklayarak MARS, esneklik, timeot, havuz yapılandırması vb. Gelişmiş bağlantı dizesi seçeneklerinden herhangi birini değiştirebilirsiniz. Bağlantı ekle "iletişim kutusunu tıklayın. Bu iletişim kutusuna daha sonra Veri Bağlantısı'na sağ tıklayıp "Bağlantıyı değiştir ..." seçeneğini seçerek erişebilirsiniz. Kullanılabilir gelişmiş seçenekler sunucu türüne göre değişir.

Veritabanını SQL Server Management Studio kullanarak oluşturursanız, veritabanı bir sunucu örneğinde oluşturulur, böylece uygulamanızı dağıtmak için veritabanının yedeğini almanız ve SQL Server dağıtımında dağıtmanız gerekir. Alternatif olarak, uygulamanızla kolayca dağıtılacak olan SQL Server Express'i (SQL Server 2012'de localDB) kullanarak bir veri dosyası kullanabilirsiniz.

Yani bir ASP.NET uygulamasıysa, bir App_Datafolder var. Sağ tıklarsanız, SQL Server Veritabanı olabilecek yeni bir öğe ekleyebilirsiniz. Bu dosya bu klasörde olacak, SQL Express ile çalışacak ve dağıtımı kolay olacak. Bunun çalışması için makinenize SQL Express / localDB yüklenmiş olmalıdır.


2
Bu şekilde anlıyorum ve beğendim: D ama nasıl yedekleme yapılacağı ve sonra nasıl dağıtılacağı hakkında daha fazla bilgi verebilir misiniz? MS SQL Server hakkındaki bilgim kötü, yaklaşık bir saat önce kullanmaya başladım: \
Pomster

Realsql sunucusu var mı? sql server express kullanacak mısınız? Server Compact Edition ile yeterli mi? Daha fazla bilgi vermezseniz, kullanabileceğinizi alamıyoruz
JotaBe

1
Bir veritabanı oluşturmak için MS SQl Server Management Studio 2008, MS SQL Management studio kullandım. Bazı sütunlar oluşturmak için bir sorgu kullandım. Şimdi C # uygulaması ile doldurmak istiyorum
Pomster

Bu uygulama dağıtılacak mı? Yerel olarak kullanacak mısınız? İhtiyacınız olan sunucu türünü düşünüyor musunuz? Veritabanınızı nasıl yaptığınızı bilmeme gerek yok ama nerede ve neden. Neye ihtiyacın olduğunu tahmin edemiyorum !!!
JotaBe

Yerel olarak kullanacağım, benden sana vermemi istediğin şey değil mi?
Pomster

113

Bir bağlantı dizesini almak için çok basit bir şekilde, uzantıyı, bir metin dosyası oluşturun değiştirmektir .txt için .Udl .

.Udl dosyasına çift ​​tıkladığınızda Veri Bağlantısı Özellikleri sihirbazı açılır .

Veritabanı sunucunuzla bağlantıyı yapılandırın ve test edin.

Sihirbazı kapatın ve .udl dosyasını istediğiniz metin düzenleyicisiyle açın ve bağlantı dizesini ( Provider=<driver>parça olmadan ) C # uygulamanızda kullanmak için kopyalayın .

örnek udl dosyası içeriği

[oledb]
; Everything after this line is an OLE DB initstring
Provider=SQLNCLI11.1;Integrated Security=SSPI;Persist Security Info=False;User ID="";Initial Catalog=YOURDATABASENAME;Data Source=YOURSERVERNAME;Initial File Name="";Server SPN=""

ondan kopyalamak için gerekenler

Integrated Security=SSPI;Initial Catalog=YOURDATABASENAME;Data Source=YOURSERVERNAME;

Kullanıcı adı ve şifre belirtmek isterseniz, diğer cevaplardan da yararlanabilirsiniz.

Eğitim: https://teusje.wordpress.com/2012/02/21/how-to-test-an-sql-server-connection/


Bu işe yaramazsa, UDL uzantısını etkinleştirmek / devre dışı bırakmak için kayıt defteri değişiklikleri yapacak bazı reg dosyaları vardır. Genellikle Windows klasöründe * .reg ararım.
AMissico

Oluşturun ve web dizesi dosyasında bağlantı dizesini kaydedin youtu.be/1WgO7CDSmu8
anomepani

20

Açık connectionstrings.com her DB sağlayıcısı için bağlantı dizesini bulabilirsiniz. Belirli nitelikler / özellikler ve değerleri ile bir bağlantı dizesi oluşturulur. SQL Server 2008 için şu şekilde görünür (standart, burada ihtiyacınız olan şey budur):

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

tarihinde myServerAddress, kurulu örneğinizin adını yazın (varsayılan .\SQLEXPRESSolarak SQL Server Express sürümü içindir). İlk katalog = veritabanı adınız, bağlandıktan sonra sol tarafta SSMS'de göreceksiniz. Gerisi kendisi için konuşur.

Düzenle

Windows kimlik doğrulaması ve ekleme için kullanıcı adını ve şifreyi atlamanız gerekir Integrated Security=SSPI.


11

MS SQL Server ve Management Studio yüklediyseniz ve kurduysanız, Visual Studio'ya gidin (SQL Server Management Studio değil Visual Studio).

1] Visual Studio'da Araçlar -> Veritabanına Bağlan'a gidin .

2] Sunucu Adı altında Veritabanı Sunucu Adınızı seçin (Liste zaman alıyorsa Doldurun).

3] Veritabanına Bağlan altında, Seç'i seçin veya bir veritabanı adı girin .

4] Açılır Listeden Veritabanınızı seçin.

5] Veritabanı seçtikten sonra Test Bağlantısı'nı deneyin.

6] Test Bağlantısı Başarılı Olursa Tamam'ı tıklatın.

7] Visual Studio'da Görünüm -> Sunucu Gezgini'ne gidin .

8] Sunucu Gezgini penceresinde, Veri Bağlantıları altında Veritabanınızı seçin. Veritabanınızı sağ tıklayın -> Özellikler'i tıklayın .

9] In Özellikleri penceresi size göreceksiniz bağlantı dizesi .


9

Benim çözümüm (2010).

Yeni bir çalışma sayfasında bir hücre seçin, ardından:

Data -> From Other Sources -> From SQL Server 

koymak sunucu adı , tablo seç , vs,

Eğer "Veri Alma" iletişim kutusuna olsun,
tıklayın Properties, "Bağlantı Özellikleri" iletişim
"tanımı" sekmesini seçin.

Excel orada güzel kopyalama için Bağlantı Dizesi görüntüler
(hatta bağlantı dosyasını dışa aktar ... )


Bu mükemmel çalışır ve bağlantının VS'de kurulmasını gerektirmez.
Robino

Haha, bunu elde etmenin süper yaratıcı ama etkili bir yolu. İlk önce denedim çünkü herhangi bir önkoşul bağımlılığı gerektirmedi. Teşekkür ederim.
Todd

3

Yapılandırma düğümünde web.config dosyasına aşağıdaki etiketi koy

 <connectionStrings>
<add name="NameOFConnectionString" connectionString="Data Source=Server;Initial Catalog=DatabaseName;User ID=User;Password=Pwd"
  providerName="System.Data.SqlClient" />

yukarıdaki bağlantıları kullanarak kullanabilirsiniz, ör.

SqlConnection con = new SqlConnection();
            con.ConnectionString = ConfigurationManager.ConnectionStrings["NameOFConnectionString"].ToString();

3

Linqpad aracını kullanırsanız, bağlantılardan bir hedef veritabanına bağlandıktan sonra kullanılacak bir bağlantı dizesi alabilirsiniz.

  1. Veritabanı bağlantısına sağ tıklayın.
  2. seçmek Properties
  3. seçmek Advanced
  4. seçmek Copy Full Connection String to Clipboard

Sonuç: Data Source=.\jabberwocky;Integrated Security=SSPI;Initial Catalog=Rasa;app=LINQPad

resim açıklamasını buraya girin


app=LinqPadSürücülere ve Serverkaynak yerine diğer öğelere bağlı olarak kaldırın, sürücüyü hedef işleme uyacak şekilde ayarlamanız gerekebilir; ama bir fırlatma rampası verir.


2
Bu
Jabberwocky

1

SQL Server veritabanı saklanacaktır aşağıdaki yolda varsayılan olarak

<drive>:\Program Files\Microsoft SQL Server\MSSQL.X\MSSQL\Data\

, <drive>yükleme sürücüsü ve X örnek numarasıdır (Veritabanı Altyapısı'nın ilk örneği için MSSQL.1). Bağlantı dizesini sağlamak için, sakladığınız sql sunucusu veritabanının sunucu adının ardından veritabanı sunucusu örneğinin ne olduğunu bilmelisiniz.

Genellikle sunucu adı, veritabanının eklendiği makinenin ip adresi gibi ve varsayılan örnek SqlExpress olacaktır

Bir bağlantı dizesi , Veri Kaynağı adı, yani sunucu adı, Başlangıç ​​kataloğu , veritabanı adı, kullanıcı kimliği , veritabanının oturum açma kullanıcı kimliği, parola, yani veritabanının oturum açma parolasını içerir.


1
Bağlantı dizesini nasıl edinebilirim?
Pomster

1
Program dosyalarına bir göz attım \ Microsoft SQl Server ve ne aradığımı bilmiyorum?
Pomster

veritabanı depolama klasörünü aramanıza gerek yoktur, bağlantı dizesi için verdiğim bağlantıya bakın ve bağlantı dizenizi yazın.
Sai Kalyan Kumar Akshinthala

0

Projenizde Bağlantı Yöneticisi oluşturduysanız, bağlantı dizesini oradan kolayca çekebilirsiniz.

String connection = this.dts.connections["<connection_manager_name>"];

Ve bu bağlantıyı şu yerlerde kullanın:

using (var conn = new SqlConnection(connection))

Yanlışım varsa lütfen düzelt.


0

Arkadaşlarımın en kolay yolu, visual studio 2019'da (benim durumumda) sunucu gezgini sekmesini açmak ve ardından veritabanına bağlantı oluşturmaya çalışmaktır. Başarılı bir bağlantı oluşturduktan sonra üzerine sağ tıklayın ve propierties'e gidin. Orada doğru sözdizimi ile bir dize bağlantı alanı bulacaksınız! ... Bu benim için çalıştı çünkü sunucumun adını elden biliyordum .... sadece ef iskele çalıştırmak için doğru sözdizimi anlayamadık ...


-2
SqlConnection con = new SqlConnection();
con.ConnectionString="Data Source=DOTNET-PC\\SQLEXPRESS;Initial Catalog=apptivator;Integrated Security=True";

2
Bu OP sorusuna nasıl cevap veriyor?
Filburt
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.