Se connecter a une base de donnee SqL server sur une application C#

Signaler
Messages postés
12
Date d'inscription
lundi 24 novembre 2008
Statut
Membre
Dernière intervention
5 avril 2009
-
Messages postés
1
Date d'inscription
samedi 25 juin 2011
Statut
Membre
Dernière intervention
29 juin 2011
-
Salut à tous !

   Je suis assez novice en programmation et je travail sur un programme de reservation en C# qui va chercher des données sur une base sql server. Pour le moment le code en C# ca va et le SQL je connais assez bien mais dés qu'il s'agit de se connecter à la base de données là j'ai du mal. Je ne sais pas comment faire pour que mon programme se connecte à la base aille y chercher des données ou en ajouter à la base de données. Alors si quelqu'un de fort sympatique pouvais me mettre sur la voie ou m'indiquer un tuto je lui en serait reconnaissant !

Merci d'avance !

15 réponses

Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

Salut

si tu veux toucher un peu au derrnière technologie et que tu es motivé, je te conseillerais d'aller voir du côté de linq

tu génères un dbml directement avec visual studio (c'est très simple)

ce dbml sera du code généré par visual studio et sera toute ta couche d'accées db

tu ne devras plus t'occuper de conncetionm, déeconnection, de faire même des requetes sql
tu feras tout via linq et des objets linq

ce que j'apprécie le plsu c'est le fait que ta base de données est complètement modélisée en objet.

Disons que tu as une table personne dans ta db

le dbml te généera donc une classe personne avec toutes les colonnes qui deviendront donc des propriétes.
Messages postés
12
Date d'inscription
lundi 24 novembre 2008
Statut
Membre
Dernière intervention
5 avril 2009

C'est vrai que ca n'a pas l'air mal mais j'ai mes petite habitudes, et je suis pris par le temps je préférerai trouver comment aller chercher les données dans ma base avec du C# tout simple si c'est possible . Mais merci qu'en méme pour le renseignement ca pourrai bien m'étre utile dans l'avenir
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

ok

tu peux simplement utiliser le System.Data.SqlClient qui est dans le framework

cherche un peu sur google, tu trouveras plein de samples

bonne chance
Messages postés
12
Date d'inscription
lundi 24 novembre 2008
Statut
Membre
Dernière intervention
5 avril 2009

J'ai trouvé enfin mon bonheur, je vais me servir de MySQLDriverCS je l'ai télécharger et ca a fait une sorte d'installe . Mais bon à mon avis il y a d'autres manips à fait car à la compil mon programme ne reconnait pas la librairie  Mysqldrivercs donc du coup ca marche pas, Alors si quelqu'un s'est déjà servi de ca et sait d'où vien le probléme , merci de m'aider .

Pour information je travail avec Visual Studio 2005.
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

ah ok je viens de capter

on est dans le forum mysql (j'avais pas vu)

mais l'intitulé de ton poste m'a induit en erreur

comme on fait du .net, on tourne souvent avec du msssql server, donc si on dit sql server, pour tout le monde c'est mssql

"Re : se connecter a une base de donnee SqL server sur une application C#"

soit

pour ton problème, tu dois trouver des drivers mysql en .net, tu peux en trouver différents sur le net

ici http://morpheus.developpez.com/mysqldotnet/ y a même le tuto avec
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

je peux juste te demander pourquoi tu utilises mysql ?

pourquoi pas tu me diras mais tu as une raison particulière ?
Messages postés
12
Date d'inscription
lundi 24 novembre 2008
Statut
Membre
Dernière intervention
5 avril 2009

En fait comme je l'ai dit plus haut je travail un programme de reservation en C# et en effet j'ai ecrit n'importe quoi le programme ne va pas chercher les données sur sql server mais sur une base de données mysql administré avec phpmyadmin. C'est un sujet que m'a données mon prof ou je doit faire une application en C# avec une interface graphique qui proposera l'utilisateur des destination et qui lui permettra de faire une reservation. Le choix du C# et de mysql m'a été imposé par le prof.

En tout cas merci pour les renseignement je vais étudier ca .
Messages postés
12
Date d'inscription
lundi 24 novembre 2008
Statut
Membre
Dernière intervention
5 avril 2009

J'ai encore un probléme .J'ai télécharger mysql Connector et mysqldriverCs mais je n'arrive
pas m'en servir, il doit y avoir une manip à faire (peut copier le
fichier dans un dossier de Visual Studio 2005 mais je ne sais pas
lequel).
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

tu as des dll ?

tu dois simplement les importes dans ton projet avec ajouter une reference

ensuite faire un using de la dll dans le fichier cs ou tu veux les utiliser
Messages postés
12
Date d'inscription
lundi 24 novembre 2008
Statut
Membre
Dernière intervention
5 avril 2009

Salut c'est encore et toujours moi j'ai fini par trouver comment utiliser mysqldriverCs apparament j'ai réussi a me connecter a ma base je dit bien apparement puisque je n'arrive pas à lancer des requete c'est un probléme de syntaxe a tout les coups mais pas moyen de trouver des exemple et le manuel de mysqldriverCs est assez inutile.Alors si quelqu'un connait cet syntaxe je lui en serait INFINIMENT Reconnaissant parce que là je commence à saturé a force de perdre du temps sur des truc tout simple . Aprés promis je vous laisse tranquille !

Voila le code que j'utilise pour tester mysqldriverCs :

using System;
using System.Collections.Generic;
using System.Text;
using MySQLDriverCS;

namespace connectionBDD
{
    class Program
    {
        static void Main(string[] args)
        {
          
            string Serveur;
            MySQLConnection conn;
            string Base;
            string Login;
            string Pass;

            Serveur="localhost";
            Base="mabase";
            Login="root";
            Pass="";

            conn = new MySQLConnection( new MySQLConnectionString(Serveur,Base,Login,Pass).AsString );
            conn.Open();
            
//Néme tentative de faire une requete sql en se basant sur le manuel:
            mysql> SELECT Nom
                    FROM vesseau
                     WHERE Num=1;
        }
    }
}
 
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

attends je ne comprends pas

//Néme tentative de faire une requete sql en se basant sur le manuel:
            mysql> SELECT Nom
                    FROM vesseau
                     WHERE Num=1;

cela n' a rien avoir ac ca ...

ca c'est un prompteur mysql à partir du quel tu peux faire des requetes en ligne de command

tu dois bosser avec les objects que tu as crée.
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

voila un example, si tu as un prob n'hésite pas.

try
{
MySQLConnection con;
con = new MySQLConnection( new MySQLConnectionString("localhost",
"database",
"user",
"pass").AsString );
con.Open();

string sql = "SELECT * FROM Table";

MySQLCommand cmd = new MySQLCommand(sql,con);

MySQLDataReader reader = cmd.ExecuteReaderEx();

while(reader.Read())
{
Console.WriteLine( reader[0].ToString() );
}

reader.Close();
con.Close();
}
catch(Exception ee)
{
Console.WriteLine( ee.ToString() );
}
Messages postés
12
Date d'inscription
lundi 24 novembre 2008
Statut
Membre
Dernière intervention
5 avril 2009

Encore une fois tu me sauve la vie GillouXman, vraiment un grand grand merci à toi !!

Respect pour toutes tes connaissance  .(Entre fan de Stargate on s'entend)
Messages postés
561
Date d'inscription
mardi 4 mars 2008
Statut
Membre
Dernière intervention
10 juin 2010

si si peu tu sais, tu t'en rendras compte plus tard.

Très grand fan de Stargate par contre ;)
Messages postés
1
Date d'inscription
samedi 25 juin 2011
Statut
Membre
Dernière intervention
29 juin 2011

slt, je veu le code de cnx entre sql server 2008 et c# et merci d'avance :)