IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

using MySql.Data.MySqlClient qui ne marche que sur certain projet


Sujet :

C#

  1. #1
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 79
    Points
    79
    Par défaut using MySql.Data.MySqlClient qui ne marche que sur certain projet
    Bonjour,

    Je débute en C# et j'ai voulu suivre des tuto et créer un projet qui va piocher dans une base de données.

    Je crée ma base directement via visual2008 qui me crée un fichier mdf. Mes tables sont toutes créées, les relations entre les tables sont aussi créées.


    J'essaie de me connecter à cette base. Pour faire ça, j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    using System;
    using System.Collections.Generic;
    using System.Text;
    using MySql.Data.MySqlClient;
    using System.Text.RegularExpressions;
    using System.Configuration;
    using System.Data;
    mais au moment de compiler, il me dit

    C:\Users\Idir\Desktop\Solution1\metier\Program.cs(4,7): erreur CS0246: Le type ou le nom d'espace de noms 'MySql' est introuvable (une directive using ou une référence d'assembly est-elle manquante*?)
    pourtant, quand je compile les projet exemple dont j'ai tiré et quand je compile ces derniers, il n'y a aucun soucis.

    quelqu'un saurait pourquoi?

    Merci

  2. #2
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Parce que dans ton projet tu dois ajouter une Reférence au connecteur ADO MySql

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    Citation Envoyé par olibara Voir le message
    Parce que dans ton projet tu dois ajouter une Reférence au connecteur ADO MySql
    a priori c'est ça... sauf que c'est ADO.NET, pas ADO (ouais je sais, je suis maniaque )

    Par contre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Je crée ma base directement via visual2008 qui me crée un fichier mdf
    mdf, c'est SQL Server... pourquoi tu utilises un provider MySQL ?

    Le provider pour SQL Server est System.Data.SqlClient

  4. #4
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 79
    Points
    79
    Par défaut
    merci, effectivement ça passe mieux avec System.Data.SqlClient.
    par contre, la connexion s'opère de la même façon? où est ce qu'il y a une syntaxe encore à part?

    mais merci en tout cas.

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    Citation Envoyé par ryu20 Voir le message
    par contre, la connexion s'opère de la même façon? où est ce qu'il y a une syntaxe encore à part?
    C'est quasiment pareil, tu vas juste avoir SqlConnection au lieu de MySqlConnection, SqlCommand au lieu de MySqlCommand, etc... le modèle ADO.NET repose sur des interfaces, donc tous les providers ADO.NET ont les mêmes méthodes et propriétés

  6. #6
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 79
    Points
    79
    Par défaut
    J'ai encore un soucis .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    SqlConnection SQLConnection = new SqlConnection();
                string ConnectionString = "Data Source=C:\\Users\\Idir\\Desktop\\Solution1\\web\\App_Data\\Vetement.mdf;" ;
     
                try
                {
                    SQLConnection.ConnectionString = ConnectionString;
                    SQLConnection.Open();
     
     
                }
                catch (Exception Ex)
                {
     
                    Console.Out.WriteLine("raté");
                }
     
                return 0;
    du coup, avec cette syntaxe, je réussi à compiler, mais le soucis maintenant, c'est que j'obtiens des exceptions de première chance. J'ai regardé un peu sur le net, mais il semble que cette exception serve un peu à tout.
    En réfléchissant, je me suis dit que c'était surement l'adresse de ma base qui pose problème, mais vu que la base a été créée directement sous visual, je ne vois pas quelle adresse de serveur je dois donner.

    si vous avez une idée, merci.

    [EDIT] quelques info supplémentaires en cas.
    j'ai créé une solution avec un projet windowsForms et un projet Web application.
    La base a été créée dans le projt Web. J'ai bien créé la référence au projet Web.
    Merci

  7. #7
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Regarde bien to connection String

    http://www.connectionstrings.com/

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    Citation Envoyé par ryu20 Voir le message
    du coup, avec cette syntaxe, je réussi à compiler, mais le soucis maintenant, c'est que j'obtiens des exceptions de première chance. J'ai regardé un peu sur le net, mais il semble que cette exception serve un peu à tout.
    "exception de première chance", c'est juste ce que dit Visual Studio quand n'importe quelle exception non gérée se produit, ça ne donne aucun détail... Dans ton catch, plutôt que "raté", affiche plutôt les détails de l'exception (Ex.ToString()), ce sera plus utile à la résolution du problème

    Mais je pense qu'effectivement c'est ta chaine de connexion qui est incorrecte... regarde sur le site indiqué par olibara, il y a toutes les chaines de connexion possibles et imaginables...

  9. #9
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 79
    Points
    79
    Par défaut
    J'ai beau regarder dans tous les sens, je ne comprend pas.
    j'ai fini par trouver cette syntaxe.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    string ConnectionString = ".\\SQLEXPRESS; AttachDbFilename=C:\\Users\\Idir\\Desktop\\Solution1\\web\\App_Data\\Vetement.mdf;Integrated Security=True;User Instance=True";
    en passant en mode debug, il finit par me dire :
    Informations supplémentaires*: Mot clé non pris en charge*: '.\sqlexpress; attachdbfilename
    mais du coup, je ne comprend pas comment on trouve l'adresse du server de ma base.

    je fais encore appel à vous.
    Merci

  10. #10
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 79
    Points
    79
    Par défaut
    j'ai peut être une piste mais bon...
    est ce qu'il y aurait un équivalent à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ConnectionString = ConfigurationManager.ConnectionStrings["dbSqlServerCe"].ConnectionString;
    pour un server sql?
    ca reglerai tout mes soucis.
    merci

  11. #11
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 79
    Points
    79
    Par défaut
    J'ai trouvé, en fait dans ma syntaxe, il manquait le mot server.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string ConnectionString = "server = (loca); AttachDbFilename=C:\\Users\\Idir\\Desktop\\Solution1\\web\\App_Data\\Vetement.mdf;Integrated Security=True;User Instance=True";
    meci encore pour l'aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Script Fade In qui ne marche que sur IE
    Par TMattio dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/08/2010, 14h16
  2. [RegEx] REGEX qui ne marche que dans certains cas
    Par Galdon dans le forum Langage
    Réponses: 4
    Dernier message: 14/01/2010, 09h15
  3. CSS input qui ne marche que sur Firefox
    Par DJ Caësar 9114 dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 24/04/2009, 09h41
  4. Réponses: 1
    Dernier message: 18/07/2008, 09h10
  5. Connexion à une base MySQL (MySql.Data.MySqlClient)?
    Par Jayceblaster dans le forum Windows Forms
    Réponses: 2
    Dernier message: 22/01/2008, 09h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo