
Connexion SQL Serveur 2005 en C#
4 messages
• Page 1 sur 1
Connexion SQL Serveur 2005 en C#
Bonjour,
Dans le terme du projet que l'on ma attribué, je dois gérer en C# les droits d'accès d'un logiciel grâce a une base de données déployé sous SQL Serveur 2005.
Je recherche donc comment :
- Etablir une connexion a ma base de donné.
- Effectuer par la suite effectué des requêtes basiques.
En vous remerciant.
Dans le terme du projet que l'on ma attribué, je dois gérer en C# les droits d'accès d'un logiciel grâce a une base de données déployé sous SQL Serveur 2005.
Je recherche donc comment :
- Etablir une connexion a ma base de donné.
- Effectuer par la suite effectué des requêtes basiques.
En vous remerciant.
- Woote
- Messages: 3
- Inscription: 18 Sep 2008, 16:12
Re: Connexion SQL Serveur 2005 en C#
Bien après pas mal de recherche voila un code qui fonctionne plutôt pas mal.
Seul défaut : le faite qu'il ne fonctionne qu'avec du serveur SQL, si vous désirez que le code soit multi-plateforme il faut changer les Sqlquelquechose en Dbquelquechose et penser a utiliser les factory, mais j'irai pas plus loin c'est déjà la misère sans... (si ça vous intéresse contactez moi)
_________________________________________________________________________________________
Alors d'abord on rajoute les References
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
Et on n'oublie pas de les linker au cas ou, tjrs utile ^^ (Explorateurs de solutions => clic droit sur Reference => Ajouter reference)
_________________________________________________________________________________________
Ensuite on met tout dans un try catch (c'est parfait pour récupérer et gerer les erreurs)
try
{
// On initialise deux valeurs pour les parametres de la connexion et la commande qui nous permettra de gerer la bdd
SqlConnection maConnexionSQLsrv;
SqlCommand myCommand;
string maRequete, ConnexionSQL;
string result;
//Récupération de la chaine de connexion au serveur de base de données (voir en bas pour la description de Ma BDD)
ConnexionSQL = ConfigurationManager.ConnectionStrings["Ma BDD"].ConnectionString;
maConnexionSQLsrv = new SqlConnection(ConnexionSQL);
//Requete mise a jour de la table client
maRequete = "SELECT Nom FROM Perimetre";
//Création de la commande SQL
myCommand = new SqlCommand(maRequete, maConnexionSQLsrv);
myCommand.CommandType = CommandType.Text;
//Execution de la requête
myCommand.Connection.Open();
//Recuperation de la requete
result = (string) myCommand.ExecuteScalar();
Console.WriteLine(" Affichage : " + result);
myCommand.Connection.Close();
}
catch (SqlException ex)
{
Console.WriteLine(ex);
}
_________________________________________________________________________________________
Explication de :ConfigurationManager.ConnectionStrings["Ma BDD"].ConnectionString;
En gros le principe est de recuperer dans un fichier XML appeler app.config (a integrer dans le projet) les parametres de connexion a votre bdd
voici le code qui permet de s'y connecter en utilisant votre identifiant Windows, donc penser a lui mettre les droits.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add
name="Ma BD"
providerName="System.Data.SqlClient"
connectionString="Data Source=RentreLeNomDeVotreServeur;Initial Catalog=RentrerLeNomDeVotreBaseDeDonnée;Integrated Security=True"
/>
</connectionStrings>
</configuration>
_________________________________________________________________________________________
Et voila, si vous avez des soucis contactez moi par mail (adresse dans le profil)
Seul défaut : le faite qu'il ne fonctionne qu'avec du serveur SQL, si vous désirez que le code soit multi-plateforme il faut changer les Sqlquelquechose en Dbquelquechose et penser a utiliser les factory, mais j'irai pas plus loin c'est déjà la misère sans... (si ça vous intéresse contactez moi)
_________________________________________________________________________________________
Alors d'abord on rajoute les References
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
Et on n'oublie pas de les linker au cas ou, tjrs utile ^^ (Explorateurs de solutions => clic droit sur Reference => Ajouter reference)
_________________________________________________________________________________________
Ensuite on met tout dans un try catch (c'est parfait pour récupérer et gerer les erreurs)
try
{
// On initialise deux valeurs pour les parametres de la connexion et la commande qui nous permettra de gerer la bdd
SqlConnection maConnexionSQLsrv;
SqlCommand myCommand;
string maRequete, ConnexionSQL;
string result;
//Récupération de la chaine de connexion au serveur de base de données (voir en bas pour la description de Ma BDD)
ConnexionSQL = ConfigurationManager.ConnectionStrings["Ma BDD"].ConnectionString;
maConnexionSQLsrv = new SqlConnection(ConnexionSQL);
//Requete mise a jour de la table client
maRequete = "SELECT Nom FROM Perimetre";
//Création de la commande SQL
myCommand = new SqlCommand(maRequete, maConnexionSQLsrv);
myCommand.CommandType = CommandType.Text;
//Execution de la requête
myCommand.Connection.Open();
//Recuperation de la requete
result = (string) myCommand.ExecuteScalar();
Console.WriteLine(" Affichage : " + result);
myCommand.Connection.Close();
}
catch (SqlException ex)
{
Console.WriteLine(ex);
}
_________________________________________________________________________________________
Explication de :ConfigurationManager.ConnectionStrings["Ma BDD"].ConnectionString;
En gros le principe est de recuperer dans un fichier XML appeler app.config (a integrer dans le projet) les parametres de connexion a votre bdd
voici le code qui permet de s'y connecter en utilisant votre identifiant Windows, donc penser a lui mettre les droits.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add
name="Ma BD"
providerName="System.Data.SqlClient"
connectionString="Data Source=RentreLeNomDeVotreServeur;Initial Catalog=RentrerLeNomDeVotreBaseDeDonnée;Integrated Security=True"
/>
</connectionStrings>
</configuration>
_________________________________________________________________________________________
Et voila, si vous avez des soucis contactez moi par mail (adresse dans le profil)
- Woote
- Messages: 3
- Inscription: 18 Sep 2008, 16:12
Re: Connexion SQL Serveur 2005 en C#
Si t'as d'autres questions, hésite pas ! 

- Tibo
- Administrateur du site
- Messages: 147
- Inscription: 26 Mar 2008, 13:58
Re: Connexion SQL Serveur 2005 en C#
J'y penserai monsieur
D'ailleurs pour ceux qui passerait par la, l'utilisation des DataReaders sont parfait pour gérer les retours de requêtes quand on désire les utiliser ou les transformer.

D'ailleurs pour ceux qui passerait par la, l'utilisation des DataReaders sont parfait pour gérer les retours de requêtes quand on désire les utiliser ou les transformer.
- Woote
- Messages: 3
- Inscription: 18 Sep 2008, 16:12
4 messages
• Page 1 sur 1
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités