"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?

nawfal
la source
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
Damien_The_Unbeliever
la source
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.

Oded
la source
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 Viltersten
la source
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