Bağlantı dizesindeki "Sunucu" ve "Veri Kaynağı" karşılaştırması


112

SqlServer'da yeniyim, şu anda SqlLocalDbyerel olarak çalışmak için yükledim. İyi, ancak iki bağlantı dizesini görebiliyorum ve her ikisi de çalışıyor:

Data Source=(localdb)\v11.0;Integrated Security=true;

ve

Server=(localdb)\v11.0;Integrated Security=true;

İkisi arasında tam olarak ne fark var?


1
sunucu, db, kullanıcı adı, şifre ile ilgili anahtar kelimeler bu cevapta listelenmiştir: stackoverflow.com/a/15529085/661933
nawfal

Yanıtlar:


114

Tümüyle eşanlamlı olanlar dahil tüm bağlantı dizesi anahtar sözcüklerinin tam listesi için lütfen SqlConnection.ConnectionStringbelgelere bakın :

Bunların hepsi tamamen eşdeğerdir:

  • Veri kaynağı
  • Sunucu
  • Adres
  • Adr
  • Ağ adresi

2
Soruyu soruyor, Microsoft neden eşdeğerleri yarattı ...? (
kafamızı

1
@bytedev - tarihsel izdiham, inanıyorum. Bu isimlerin çoğu diğer eski DB bağlantı "standartlarında" kullanılmaya başlandı. ADO.Net'i oluştururken, çakışan kullanımlar olmadığı sürece, kod taşıma işlemini kolaylaştırmak için eski standartlarda olduğu kadar yaygın olanlara da izin verebilirsiniz.
Damien_The_Unbeliever

@Damien_The_Unbeliever confluence nedir? Googledim ama bir sürü Atlassian şey aldım (ve bildiğim biri). Ama kelimenin anlamı nedir? "Translate: confluence" ı denedim ama nada aldım ...
Konrad Viltersten

Herhangi bir nedenle bağlantı dizeniz bu anahtar sözcüklerden birden fazlasını içeriyorsa (ve adres değerleri çakışıyorsa), son öğenin kullanıldığını bilmek yararlı olabilir ; önceki değerler göz ardı edilir. Örneğin, bağlantı dizesi verildiğinde, Server=192.168.2.2;Data Source=localhostmüşteri localhostdeğeri kabul edecek ve değeri yok sayacaktır 192....
Brian Lacy


11

Eşanlamlıdırlar - ikisinden birini kullanabilirsiniz.

Yani - çerçeve söz konusu olduğunda, bunlar aynıdır.


Bağlantı dizelerindeki eşdeğer anahtar kelimelerin aralığının nedeni için googlearching yapıyorum . Şimdiye kadar iyi bir açıklama bulamadım. Bunun tarihsel nedenlerden ve farklı "dünyalardan" kullanıcıların bir araya gelmesinden kaynaklandığını varsayıyorum. Başka bir sebep var mı?
DonkeyBanana

0

En sevdiğim kurulum, boşluk içermeyen bir kurulumdur. En basit haliyle, dört değer sağlanmalıdır - URL, kapsayıcı, kullanıcı ve kimlik bilgileri.

  • sunucu
  • veri tabanı
  • uid
  • pwd

Yani bir bağlantı dizisi şuna benzer.

Sunucu = stuffy.databases.net; veritabanı = havasız; uid = Konrad; pwd = ABC123 (!);


Konrad, sanırım olumsuz seçmenler ne dediğini anlamadı. Örneğin, "veri kaynağı" ndan daha iyi "sunucusu" olduğunu kastediyorsunuz çünkü bir kelime boşluk içermiyor. Aynı "kullanıcı kimliği" yerine "uid" için de geçerlidir. Cevabınızın geçerli olduğunu düşünüyorum.
Tamam'ı tıklayın

@ClickOk Olabilir, olabilir ... Anladın, yani ... :)
Konrad Viltersten
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.