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

JDBC Java Discussion :

[Débutant] Connexion à une BD mysql,problème de typage/castage


Sujet :

JDBC Java

  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    570
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 570
    Points : 340
    Points
    340
    Par défaut [Débutant] Connexion à une BD mysql,problème de typage/castage
    Bonjour après avoir lu divers tuto, j'ai tenté le code suivant :


    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    String JDBC_driver = "com.mysql.jdbc.Driver";
     
    	public ConnexionBD(){
     
    	}
     
     
    	public void connexionAlaBd()
    	{
     
    		try
    		{
    			Class.forName(JDBC_driver);
    		}
    		catch(ClassNotFoundException e)
    		{
    			System.err.println(" Erreur de chargement du driver : " + e) ;
    		}
    		catch(Exception e)
    		{
    			System.err.println(" Erreur de chargement du driver : " + e) ;
    		}
     
    		try 
    		{
    			Connection con = (Connection)(DriverManager.getConnection ("jdbc:mysql://localhost/pragma", "root", ""));
     
    		}
    		catch(SQLException sqle)
    		{
    			System.err.println(" Erreur lors de la connexion : " + sqle) ;
    		}
    		catch( java.lang.ClassCastException e)
    		{
    			System.err.println(" Erreur lors de la connexion : " + e) ;
    		}
    	}
    J'ai dl le driver mysql-connector-java-3.1.14, et copié le .jar dans le dossier
    C:\Program Files\Java\j2re1.4.2_06\lib\ext. EasyPhp est lancé, et la base de données y est créé.
    Mon souci est le suivant. A la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onnection con = (Connection)(DriverManager.getConnection ("jdbc:mysql://localhost/nomDeMaBase", "root", ""));
    Si je ne force pas le castage en (Connection), Eclipse me souligne le tout avec le message d'erreur o combien magnifique :
    Type mismatch: cannot convert from Connection to Connection
    Et en forcant le castage, à l'execution je recupère l'exception.
    java.lang.ClassCastException: com.mysql.jdbc.Connection

    Donc là je ne sais pas trop quoi penser, est ce que ca vient de ma configuration, de mon code, de la drole bête rouge et cornue qui me regarde en se foutnt de ma gueule ouvertement ?

  2. #2
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    qu'as tu mis dans tes import ?
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    570
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 570
    Points : 340
    Points
    340
    Par défaut
    import java.sql.Driver;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import java.net.URL;
    import java.io.*;

    Ca vient en effet peut être de ceci, enfin, après un teste, si je fais un print de con.getClasse, il me donne :
    class com.mysql.jdbc.Connection
    Je tente alors de definir con comme com.mysql.jdbc.Connection, mais Eclipse ne reconnait pas le package com.mysql ...
    Je pense que j'ai mal mis mon .jar, mais à ce moment, je ne vois pas bien ou je dois le mettre ...

  4. #4
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    le jar doit être ajouté en tant que librairie externe.
    Project > build path > add external jar
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  5. #5
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    570
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 570
    Points : 340
    Points
    340
    Par défaut
    Merci bien. Bon, ca marche plus ou moins après bidouille, si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Connection mowah = DriverManager.getConnection ("jdbc:mysql://localhost/maBD", "root", "");
    ca me met toujours impossible de caster de connection à connection.

    Il faut que je fasse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    com.mysql.jdbc.Connection con=(com.mysql.jdbc.Connection )(DriverManager.getConnection ("jdbc:mysql://localhost/maBD", "root", ""));
    Et ce pour chaque paramètre, c'est à dire que je ne vais pas utiliser Statement stm, mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    com.mysql.jdbc.Statement statement = (com.mysql.jdbc.Statement)con.createStatement() ;
    et idem pour tout les requetes ..
    Alors ca marche c'est déjà ca, mais au vu des exemples données, je pense qu'il doàit y avoir un chti souci quand même non ?

  6. #6
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    Ben je comprend pas trop.

    Normalement le DriverManager.getConnection te renvoie un java.sql.Connection. Pas un objet du package mysql ... a moins que tu n'utilise un autre DriverManager ?

    Les imports sont tous là ?
    a la limite enlève les tous et fait le "organize imports" d'Eclipse pour voir ...
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  7. #7
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    570
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 570
    Points : 340
    Points
    340
    Par défaut
    C'est bon ca marche, j'aivirer les import et relancer le tout, il fallait juste que j'importe java.sql.Connection à la place de com.mysql....
    Je pense que j'ai du importer ca au tout tout début avec mes tentatives.
    Merci bien en tout cas ^^

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

Discussions similaires

  1. Problème de connexion à une base MySQL
    Par ctenot dans le forum NetBeans Platform
    Réponses: 8
    Dernier message: 23/11/2011, 03h59
  2. Réponses: 1
    Dernier message: 17/01/2011, 09h11
  3. Problème de connexion à une BD MySql
    Par Siguillaume dans le forum JDBC
    Réponses: 6
    Dernier message: 12/01/2009, 10h50
  4. Problème de connexion à une BD MySQL
    Par petite bohemienne dans le forum Administration
    Réponses: 1
    Dernier message: 20/06/2008, 14h23
  5. [MySQL] Problème connexion à une BDD Mysql Distante
    Par Marty000 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 17/09/2007, 09h51

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