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

Bases de données Discussion :

Connexion à distance à une base de données


Sujet :

Bases de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Juin 2011
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juin 2011
    Messages : 42
    Points : 17
    Points
    17
    Par défaut Connexion à distance à une base de données
    Bonjour à tous !
    Je suis en train de faire un programme dans lequel on doit pouvoir faire des statistiques à partir de données
    récupérées dans une base de donnée qui est dans mon cas sous Ubuntu.
    Le problème est que l'on a une erreur lors de la connexion à cette base (qui est distante sur un autre pc).
    Je n'arrive pas à avoir l'erreur en sachant que le ping fonctionne, la base est lancée, j'ai configurer le fichier
    sous Ubuntu pour les connexion entrante et j'ai aussi précisé le port à ouvrir pour la base de données.
    J'ai aussi ajouté l'utilisateur "utilisateur1" avec le bon mdp et en lui attribuant tout les droits.

    Le code du bouton connexion est ci-dessous après la capture du programme :

    Nom : Captureprog.PNG
Affichages : 239
Taille : 57,7 Ko

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    void MaFenetre::connexion()
    {
        db = QSqlDatabase::addDatabase("QODBC");
        db.setHostName("192.168.43.62");
        db.setPort(3306);
        db.setDatabaseName("Base_de_donnees");
        db.setUserName("utilisateur1");
        db.setPassword("12345678");
     
     
        QStringList driverList;
        driverList = QSqlDatabase::drivers();
        if (!driverList.contains("QODBC", Qt::CaseInsensitive))
             QMessageBox::information(this,"information","probleme de driver");
        else
             QMessageBox::information(this,"information","driver OK !");
     
        if(db.open())
        {
            db.close();
            QMessageBox::information(this,"information","connexion OK !");//Ajoute une boite de dialogue
        }
        else
        {
             QMessageBox::information(this,"information","erreur de connexion !");
        }
    }
    En vous remerciant d'avance.

  2. #2
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Salut,

    je ne connais pas Qt mais je suppose qu'il existe un attribut/propriété qui te retourne la dernière erreur.
    A vu de nez je chercherais un membre de db qui s'appelle lastError (ou approchant).
    Une fois que tu auras plus d'info, et si tu coinces toujours, je pourrais t'être un peu plus utile, qui sait
    Plus je connais de langages, plus j'aime le C.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Juin 2011
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juin 2011
    Messages : 42
    Points : 17
    Points
    17
    Par défaut
    Merci pour ta réponse
    Cela m'a beaucoup aidé car je connais maintenant l'erreur :

    "[Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié QODBC3: Unable to connect"

    Il manque des pilotes... Alors que j'ai justement pris ODBC pour avoir les soit disant driver déjà installés...
    Quelqu'un aurait-il une solution ?
    Aurais-je oublié des .dll ?
    Merci encore et bonne soirée

Discussions similaires

  1. Connexion à distance à une base de données Oracle
    Par jihaneab dans le forum Connexions aux bases de données
    Réponses: 0
    Dernier message: 26/01/2016, 16h30
  2. Connexion à distance à une base de données MySQL
    Par MasterMbg dans le forum JDBC
    Réponses: 6
    Dernier message: 06/09/2014, 05h25
  3. Réponses: 19
    Dernier message: 01/09/2008, 14h35
  4. Réponses: 0
    Dernier message: 22/08/2008, 08h23
  5. Réponses: 2
    Dernier message: 20/09/2007, 10h25

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