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

NetBeans Java Discussion :

Exécuter requête insertion Java


Sujet :

NetBeans Java

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut Exécuter requête insertion Java
    Bonjour tout le monde;
    bon je débute maintenant ) développer mes connaissances sur Java avec les bases de données.
    j'ai besoin de vos aides pour réaliser un truck.
    j'ai créé un petit projet contenant une seule classe(Contact.java);
    j'ai créé ensuite un driver que j'ai nommé : MySQL_connector
    maintenant je suis connécté à une base de donnée MySql et si je développe (jdbc:mysql://localhost:3306/test [root on Default schema]) je trouve bien mes bases de données ainsi que les tables existant de dans.
    et je peut créer d'autre si je veut.
    dans ma classe , j'ai écrit ce bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            Connection connection = null;
            Statement statement = null;
            System.out.println("Connect ...");
            try {
                Class.forName("com.mysql.jdbc.MySQL_connector");
                String connectionUrl = "jdbc:mysql://localhost/test" +
                                       "user=root&password='root'";
                connection = DriverManager.getConnection(connectionUrl);
            } catch (SQLException e) {
                System.out.println("SQL Exception: "+ e.toString());
            } catch (ClassNotFoundException cE) {
                System.out.println("Class Not Found Exception: "+ cE.toString());
            }
    j'ai importé déja sql : import java.sql.*;
    lorsque je compile ma classe , je reçoi l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    run:
    Connect ...
    Class Not Found Exception: java.lang.ClassNotFoundException: com.mysql.jdbc.MySQL_connector
    Aidez moi SVP.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 7
    Par défaut
    Bonjour, as-tu bien mis les pilotes pour la base de données correspondante dans ton projet ?

    C'est l'erreur typique quand tu as ce message en retour.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Il y a peut-être une erreur sur le nom de la classe driver jdbc: com.mysql.jdbc.MySQL_connector.
    J'ai un doute sur l'existence d'une telle classe.

  4. #4
    Membre expérimenté Avatar de akrom
    Homme Profil pro
    Automaticien
    Inscrit en
    Mai 2003
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2003
    Messages : 115
    Par défaut
    je ne sais pas si "com.mysql.jdbc.MySQL_connector" existe mais s'il n'y a pas d'erreur au niveau du nom de la classe il faut l'instanciée
    Class.forName("com.mysql.jdbc.MySQL_connector").newInstance();

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Par défaut
    Pour une requête avec un driver mysql, je pense plutôt que ce qu'il faut mettre c'est ça.
    "com.mysql.jdbc.Driver";
    Essaie

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    Citation Envoyé par missvan16 Voir le message
    Pour une requête avec un driver mysql, je pense plutôt que ce qu'il faut mettre c'est ça.
    "com.mysql.jdbc.Driver";
    Essaie
    j'ai essayé mais sans succès toujours le même erreur.

  7. #7
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    Citation Envoyé par akrom Voir le message
    je ne sais pas si "com.mysql.jdbc.MySQL_connector" existe mais s'il n'y a pas d'erreur au niveau du nom de la classe il faut l'instanciée
    j'ai créé un drivers qui me permet de se connecter à la base de données "test" de MySql et je l'ai nommé "MySQL_connector" c'est pour cela j'ai c'ai écrit comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Class.forName("com.mysql.jdbc.MySQL_connector");

  8. #8
    Invité
    Invité(e)
    Par défaut
    Hello,

    Pourquoi crées-tu une nouvelle classe driver MySQL_connector si tu en as déjà une qui est fournie par mysql?

    http://java.developpez.com/faq/jdbc/...argementDriver

  9. #9
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    Citation Envoyé par Mygale1978 Voir le message
    Hello,

    Pourquoi crées-tu une nouvelle classe driver MySQL_connector si tu en as déjà une qui est fournie par mysql?

    http://java.developpez.com/faq/jdbc/...argementDriver
    Même si j'utilise celle fournit par MySql : il me retourn l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Class Not Found Exception: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

  10. #10
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    je vous informe que j'ai ajouté le dirver "mysql-connector-java-3.1.6-bin.jar" que je l'ai téléchargé sur le NET.
    j'ai téléchargé le zip "mysql-connector-java-3.1.6.tar.gz" et je l'ai extrait dans un répertoire lib existant dans le même niveau que (build , src...)
    est ce que ça va pose un problème ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 7
    Par défaut
    Ca a l'air d'être sur la bonne voie, pour moi, l'erreur est provoquée par l'absence des pilotes pour la base de données.

  12. #12
    Invité
    Invité(e)
    Par défaut
    Re,

    Peux-tu nous donner plus de détail sur ton environnement de développement? Editeur?

    quel type d'application développes-tu? Web, console, graphique?

  13. #13
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    Citation Envoyé par Mygale1978 Voir le message
    Re,

    Peux-tu nous donner plus de détail sur ton environnement de développement? Editeur?

    quel type d'application développes-tu? Web, console, graphique?
    je travail avec Netbeans 6.9.1, je veux commencer par une petite application Windows.
    j'ai une table contact dont je vais charger les contacts.
    pour le moment j'ai créé ma première classe contact.java et dans le main j'ai ajouté le code motionné en haut.
    en suite j'ai importé sql : vous trouverez dans la pièce joint mon fichier contact.java
    Fichiers attachés Fichiers attachés

  14. #14
    Invité
    Invité(e)
    Par défaut
    Est-ce que tu as bien ajouté le mysql-connector-bin.jar à ton projet?

    Clic droit sur le repertoire "libraries" => Add Jars/Folder => rechercher le mysql-connetor jar.

  15. #15
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    où je peut trouvé ce répertoire ?l'onglet fichier de mon projet ne mentionne pas le répertoire Librairie !

  16. #16
    Invité
    Invité(e)
    Par défaut
    Regarde le screenshot
    Images attachées Images attachées  

  17. #17
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    ah Ok , je pense que j'ai pas bien choisi le type de l'application au moment de sa création , il faut je choisi desctop application.
    je vais essayer ...

  18. #18
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Par défaut
    Citation Envoyé par Mygale1978 Voir le message
    Regarde le screenshot
    Bonjour ;
    j'ai pu d'ajouter le .jar dans le dossier Libraries. maintenant il me retourne pas l'erreur que j'ai cité au début en changeant la chaîne de connexion comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    connection = DriverManager.getConnection(connectionUrl,"root","root");
    pour tester le fonctionnement : j'ai mis une petite requette "SELECT" de dans :
    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
    public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new contcat().setVisible(true);
                }
            });
            Connection connection = null;
            Statement statement = null;
            System.out.println("Connect ...");
            try {
                Class.forName("com.mysql.jdbc.Driver");
                String connectionUrl = "jdbc:mysql://localhost/test";
     
                connection = DriverManager.getConnection(connectionUrl,"root","root");
                statement = connection.createStatement();
                String requette = "SELECT nom,prenom,age FROM contact";
                ResultSet rs = statement.executeQuery(requette);
                String Nom =rs.getString(1);
                String Prenom = rs.getString(2);
                String Age = rs.getString(3);
                System.out.println("voila les coordonnees : ");
                System.out.println(Nom +" "+Prenom +" "+ Age + "");
     
     
            } catch (SQLException e) {
                System.out.println("SQL Exception: "+ e.toString());
            } catch (ClassNotFoundException cE) {
                System.out.println("Class Not Found Exception: "+ cE.toString());
            }
        }
    quand je compile je reçois l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    run:
    Connect ...
    SQL Exception: java.sql.SQLException: Before start of result set
    SVP de m'aider et désolé pour le dérangement.

  19. #19
    Membre expérimenté Avatar de akrom
    Homme Profil pro
    Automaticien
    Inscrit en
    Mai 2003
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2003
    Messages : 115
    Par défaut
    Essaye comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    while (rs.next()) {
    String Nom =rs.getString(1);
                String Prenom = rs.getString(2);
                String Age = rs.getString(3);
                System.out.println("voila les coordonnees : ");
                System.out.println(Nom +" "+Prenom +" "+ Age + "");
    }

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 7
    Par défaut
    Alfred 5 > le ResultSet retourné par un statement ou un preparedStatement s'initialise à la position précédent le premier résultat. Il faut donc "avancer" vers le premier résultat avec la méthode next(), et si tu es susceptible d'avoir plusieurs résultats, de faire une boucle comme indiqué ci-dessus, et même éventuellement d'inclure les résultats dans une collection pour mieux les traiter ensuite.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [MySQL] Requête INSERT qui s'exécute 3 fois au lieu d'une
    Par Marc22 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/03/2011, 00h05
  2. Exécuter requête SQLServer avec Java
    Par MlleMeuh dans le forum Général Java
    Réponses: 9
    Dernier message: 13/07/2010, 11h30
  3. [AC-2003] Exécuter requête insert into en vb
    Par souketou dans le forum VBA Access
    Réponses: 4
    Dernier message: 18/05/2009, 11h37
  4. Temps exécution requête d'insertion très long
    Par delphine93 dans le forum SQL
    Réponses: 9
    Dernier message: 12/12/2008, 17h41
  5. [Débutant] Requête Insert ou Update exécutée par l’objet ADO
    Par lazerdev dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 11/05/2007, 10h52

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