284 votes

Comment obtenir la chaîne de connexion d'une base de données

J'ai créé une base de données avec SQL Server Management Studio, je voudrais maintenant l'utiliser dans mon application C#. J'ai besoin de la chaîne de connexion ?

Où puis-je trouver la chaîne de connexion, et où est stockée ma base de données ?

Est-ce que je dois le publier ou quelque chose comme ça, ou est-ce qu'il est dans mes documents quelque part ?

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

Comment puis-je obtenir le chaîne de connexion ? Où puis-je trouver la chaîne de connexion à copier-coller dans la section ci-dessus ?

Comment publier ma base de données pour que Visual Studio puisse la récupérer ? Ensuite, je peux simplement tirer la chaîne de connexion de là ?

0 votes

Regardez comment générer une chaîne de connexion youtu.be/1WgO7CDSmu8

271voto

JotaBe Points 8950

La façon la plus simple d'obtenir la chaîne de connexion est d'utiliser la fenêtre "Server Explorer" dans Visual Studio (menu Voir , Explorateur de serveur ) et connectez-vous au serveur à partir de cette fenêtre.

Vous pouvez alors voir la chaîne de connexion dans les propriétés du serveur connecté (choisissez la connexion et appuyez sur F4 ou Alt+Enter ou choisissez Propriétés dans le menu du clic droit).

Paramètres avancés de la chaîne de connexion : Lors de la création de la connexion, vous pouvez modifier toutes les options avancées de la chaîne de connexion, comme MARS, la résilience, le timeot, la configuration du pooling, etc. en cliquant sur le bouton "Advanced..." en bas de la boîte de dialogue "Add connection". Vous pouvez accéder à cette boîte de dialogue ultérieurement en cliquant avec le bouton droit de la souris sur la connexion de données et en choisissant "Modifier la connexion...". Les options avancées disponibles varient selon le type de serveur.

Si vous créez la base de données à l'aide de SQL Server Management Studio, la base de données sera créée dans une instance de serveur, de sorte que, pour déployer votre application, vous devrez faire une sauvegarde de la base de données et la déployer dans le serveur SQL de déploiement. Alternativement, vous pouvez utiliser un fichier de données en utilisant SQL Server Express (localDB en SQL Server 2012), qui sera facilement distribué avec votre application.

Par exemple, si c'est une application ASP.NET, il y a un App_Datafolder. Si vous faites un clic droit dessus, vous pouvez ajouter un nouvel élément, qui peut être une base de données SQL Server. Ce fichier sera dans ce dossier, fonctionnera avec SQL Express, et sera facile à déployer. Vous devez avoir SQL Express / localDB installé sur votre machine pour que cela fonctionne.

2 votes

Je comprends cette méthode, et je l'aime bien :D mais pourriez-vous m'expliquer davantage comment faire une sauvegarde et ensuite déployer ? Ma connaissance de MS SQL Server est mauvaise, j'ai commencé à l'utiliser il y a environ une heure :\N- Je ne sais pas comment faire.

0 votes

Existe-t-il un serveur realsql ? utiliserez-vous sql server express ? cela suffit-il avec SQL Server Compact Edition ? Nous ne pouvons pas savoir ce que vous pouvez utiliser si vous ne donnez pas d'informations supplémentaires.

1 votes

J'ai utilisé MS SQl Server Management Studio 2008, MS SQL Management studio pour créer une base de données. J'ai utilisé une requête pour créer certaines colonnes. Maintenant je souhaite le remplir avec mon application C#.

136voto

Filburt Points 7490

Une façon très simple de récupérer une chaîne de connexion est de créer un fichier texte, de modifier l'extension de la chaîne de connexion de la façon suivante .txt a .udl .

Double-cliquez sur le .udl ouvrira le fichier Propriétés de la liaison de données magicien.

Configurez et testez la connexion à votre serveur de base de données.

Fermez l'assistant et ouvrez le fichier .udl à l'aide de l'éditeur de texte de votre choix et copiez simplement la chaîne de connexion (sans la balise Provider=<driver> ) pour l'utiliser dans votre application C#.

exemple de contenu d'un fichier udl

[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=""

ce que vous devez copier à partir de celui-ci

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

Si vous voulez spécifier le nom d'utilisateur et le mot de passe, vous pouvez adopter d'autres réponses.

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

0 votes

Si cela ne fonctionne pas, il existe des fichiers reg qui permettent de modifier le registre pour activer/désactiver l'extension UDL. Je recherche habituellement le dossier Windows pour *.reg.

0 votes

Regardez comment générer et enregistrer la chaîne de connexion dans le fichier de configuration Web. youtu.be/1WgO7CDSmu8

0 votes

C'était de loin la réponse la plus facile.

26voto

MDeSchaepmeester Points 3404

Sur cordes de connexion.com vous pouvez trouver la chaîne de connexion pour chaque fournisseur de BD. Une chaîne de connexion est constituée de certains attributs/propriétés et de leurs valeurs. Pour SQL Server 2008, elle ressemble à ceci (standard, ce dont vous aurez besoin ici) :

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

sur myServerAddress écrivez le nom de votre instance installée (par défaut, il s'agit de .\SQLEXPRESS pour l'édition SQL Server Express). Catalogue initial = le nom de votre base de données, vous le verrez dans SSMS à gauche après la connexion. Le reste parle de lui-même.

modifier

Vous devrez omettre le nom d'utilisateur et le mot de passe pour l'authentification Windows et ajouter Integrated Security=SSPI .

0 votes

Les informations d'identification vont-elles du client au serveur sql en texte clair ? Si oui, y a-t-il un moyen de les sécuriser ?

2voto

Vishal Parekh Points 74

Mettez le tag ci-dessous dans le fichier web.config dans le noeud de configuration

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

alors vous pouvez utiliser la chaîne de connexion ci-dessus, par ex.

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

0voto

El la base de données du serveur sql sera stockée par défaut dans le chemin suivant

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

, donde <drive> est le lecteur d'installation et X est le numéro d'instance (MSSQL.1 pour la première instance du moteur de base de données). Afin de fournir la chaîne de connexion, vous devez savoir quel est le nom du serveur de la base de données sql server, où vous avez stocké suivi de l'instance du serveur de base de données.

Généralement, le nom du serveur sera comme l'adresse IP de la machine où la base de données est attachée et l'instance par défaut sera SqlExpress

A chaîne de connexion contient Source des données c'est-à-dire le nom du serveur, Catalogue initial c'est-à-dire le nom de la base de données, identifiant de l'utilisateur c'est-à-dire l'identifiant de connexion de la base de données, mot de passe c'est-à-dire le mot de passe de la base de données.

1 votes

Comment puis-je obtenir la chaîne de connexion ?

1 votes

J'ai regardé dans les fichiers du programme \Microsoft SQl Server et je n'ai aucune idée de ce que je cherche ?

0 votes

Vous n'avez pas besoin de chercher le dossier de stockage de la base de données, voir le lien que j'ai donné pour la chaîne de connexion et écrire votre chaîne de connexion.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X