"Serveur" vs "Source de données" dans la chaîne de connexion


112

Je suis nouveau sur SqlServer, en ce moment je l'ai SqlLocalDbinstallé pour travailler localement. Bien, mais je peux voir généralement deux chaînes de connexion et les deux fonctionnent:

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

et

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

Quelle différence exacte y a-t-il entre les deux?


1
les mots-clés associés pour le serveur, la base de données, le nom d'utilisateur et le mot de passe sont répertoriés dans cette réponse: stackoverflow.com/a/15529085/661933
nawfal

Réponses:


114

Pour la liste complète de tous les mots-clés de la chaîne de connexion, y compris ceux qui sont entièrement synonymes, veuillez consulter la SqlConnection.ConnectionStringdocumentation :

Ce sont tous entièrement équivalents:

  • La source de données
  • Serveur
  • Adresse
  • Adr
  • Adresse réseau

2
Pose la question, pourquoi Microsoft a-t-il créé des équivalents ...? (sauf pour nous confondre :-))
bytedev

1
@bytedev - confluence historique, je crois. La plupart de ces noms ont commencé à être utilisés dans d'autres "standards" de connexion DB plus anciens. Lors de la création d'ADO.Net, tant qu'il n'y a pas d'utilisations conflictuelles, vous pouvez tout aussi bien autoriser autant d'utilisations courantes que celles existant dans les anciennes normes, pour faciliter le portage du code.
Damien_The_Unbeliever

@Damien_The_Unbeliever Qu'est-ce que la confluence ? Je l'ai googlé mais j'ai eu beaucoup de trucs Atlassian (et celui que je connais). Mais quel est le sens du mot? J'ai essayé "translate: confluence" mais j'ai obtenu nada ...
Konrad Viltersten

Il peut être utile de savoir que si, pour une raison quelconque, votre chaîne de connexion comprend plusieurs de ces mots clés (et que les valeurs d'adresse sont en conflit), le dernier élément est utilisé; les valeurs précédentes sont ignorées. Ainsi, par exemple, étant donné la chaîne de connexion Server=192.168.2.2;Data Source=localhost, le client honorera la localhostvaleur et ignorera la 192...valeur.
Brian Lacy


11

Ils sont également - vous pouvez utiliser l'un ou l'autre.

Autrement dit - en ce qui concerne le cadre, ce sont les mêmes.


J'ai recherché sur Google la raison de la plage de mots-clés équivalents dans les chaînes de connexion. Jusqu'ici, je n'ai pas trouvé d'explication valable. Je suppose que c'est dû à des raisons historiques et à des utilisateurs de différents «mondes» qui se réunissent. Y a-t-il une autre raison?
DonkeyBanana

0

Ma configuration préférée est celle qui ne contient aucun espace. Dans la forme la plus simple, il faut fournir quatre valeurs: l'URL, le conteneur, l'utilisateur et les informations d'identification.

  • serveur
  • base de données
  • uid
  • pwd

Une chaîne de connexion ressemble donc à ceci.

serveur = stuffy.databases.net; base de données = étouffant; uid = konrad; pwd = Abc123 (!);


Konrad, je pense que les contrevenants n'ont pas compris ce que vous avez dit. Vous voulez dire, par exemple, son meilleur "serveur" que "source de données" car un mot ne contient pas d'espaces. Idem pour "uid" au lieu de "user id". Je pense que votre réponse est valable.
Cliquez sur Ok

@ClickOk Peut-être, peut-être ... Vous l'avez compris, alors ... :)
Konrad Viltersten
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.