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

 Java Discussion :

Récupérer des données pour les stocker


Sujet :

Java

  1. #1
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut Récupérer des données pour les stocker
    Bonjour je suis en 2ème année de BTS SIO , et je fais un petit programme afin de gérer des entretiens d'une voiture. J'ai créé une interface avec windowBuilder donc des jframe dans Eclipse et je voulais savoir comment récuperer les valeurs que je rentre dans mes jtextfield et une fois appuyer sur le bouton 'ajouter' de ma Jframe que ma requête SQL soit exécutée et insérée dans ma base de donnée . La connexion à ma base est réalisée via le connector mysql java. Je précise ma base de donnée est php myadmin en local.

    Je vous remercie d'avance

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par Alex1407 Voir le message
    je voulais savoir comment récurer les valeurs que je rentre dans mes jtextfield
    Le savon de marseille, c'est ce qu'il y a de plus efficace

  3. #3
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    Récupérer plutôt ^^ désoler l'iPad change les mot quelque fois

    Merci

  4. #4
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

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

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Salut,
    Imaginons qu'on aie deux jTextField, le premier portant le nom txtid et le second txtnom. Nous souhaitons enregistrer les données qu'ils contiennent chacun dans la base de données.
    Si tu as établi réellement la connexion, tu as certainement un objet Connection qui te permettra évidemment de manipuler ta BD.
    Soit cn cet objet.
    pour l'insertion, (et tout autre opération d'ailleurs) tu peux te servir de la classe PreparedStatement comme suis:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //insertion dans une table
    PreparedStatement ps=null;
    try{
          ps=cn.preparestatement("insert into taTable (champId, champNom) values (?, ?)");
          ps.setString(1, txtid.getText());
          ps.setString(2, txtnom.getText());
          ps.executeUpdate();
          ps.close();
    }catch(Exception e){
          e.printStacktrace();
    }
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  5. #5
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    Merci beaucoup pour cette réponse MasterMbg cela ma bien aidé à comprendre et à avancer mais j'ai cependant encore plusieurs erreurs , les voici :
    Exception in thread "AWT-EventQueue-0" java.lang.Error: Problèmes de compilation non résolus :
    connexion ne peut pas être résolu
    La méthode getText() est indéfinie pour le type JComboBox
    La méthode setString(int, String) du type PreparedStatement ne s'applique pas aux arguments (String)
    La méthode setString(int, String) du type PreparedStatement ne s'applique pas aux arguments (String)
    La méthode setString(int, String) du type PreparedStatement ne s'applique pas aux arguments (String)

    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
    15
    16
    17
    18
    19
    JButton btnAjouter = new JButton("Ajouter");
    		btnAjouter.addActionListener(new ActionListener() {
    			public void actionPerformed(ActionEvent arg0) {
    				PreparedStatement ps=null;
    				try{
    				      ps=cn.preparestatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?)");
    				      ps.setString( comboBox.getText());
    				      ps.setString( textField_1.getText());
    				      ps.setString( textField_2.getText());
    				      ps.setString( textField_3.getText());
    				      ps.executeUpdate();
    				      ps.close();
    				}catch(Exception e){
    				      e.printStackTrace();
    				}
    			}
    		});
    		btnAjouter.setBounds(266, 204, 89, 23);
    		contentPane.add(btnAjouter);
    Petite question a propos de la connexion à ma db faut il appeler ma classe connexion a chaque insertion ?
    j’attends votre aide avec impatience merci beaucoup

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Les messages d'erreur sont très explicites:

    setString prend un paramètre int que tu as oublié de mentionné
    JCombobox n'as pas de méthode getText()

  7. #7
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    Après de multiples essais je ne parviens pas à résoudre ces erreurs , De plus comment récupérer le contenu de ma combobox merci beaucoup

  8. #8
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Alex1407 Voir le message
    Après de multiples essais je ne parviens pas à résoudre ces erreurs , De plus comment récupérer le contenu de ma combobox merci beaucoup
    Salut,

    tout est pourtant dans la doc (ou) ou à défaut dans le tutoriel.

    Et pour les paramètres du PreparedStatement, pareil. Avec en prime, un FAQ sur ce site... les méthodes pour donner les valeurs des paramètres ayant 2 arguments : le numéro (l'index) du paramètre de 1 à n dans la requête et la valeur du paramètre...
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  9. #9
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    merci beaucoup je vais regarder tout sa afin de finir mon programme je vous tiens au courant.

  10. #10
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

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

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par Alex1407 Voir le message
    Après de multiples essais je ne parviens pas à résoudre ces erreurs , De plus comment récupérer le contenu de ma combobox merci beaucoup
    Bonsoir,
    après que tu aies lit et compris les liens qui te sont offerts par Joel.drigo, si tu n'avance toujours pas (je m'en doute d'ailleurs) tu peux poster ton code en entier pour nous permettre de l'examiner et t'apporter de l'aide et conseil si possible.
    a+
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  11. #11
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    Rebonjour , après lecture et relecture des tutoriaux qui m'ont été fournis je ne parviens pas a régler mes erreurs.Voici le code de ma jframe , il y a une partie en commentaire c’était un essai suite à une explication de mon prof qui m'avait dit de récupérer le contenu de mes jtextfield dans des variables. Dites moi si il vous faut autre chose afin de m’éclairer dans mon petit programme.Merci beaucoup pour votre aide

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
     
    package Vue;
     
    import java.awt.BorderLayout;
     
    public class carburant extends JFrame {
     
    	private JPanel contentPane;
    	private JTextField textField_1;
    	private JTextField textField_2;
    	private JTextField textField_3;
     
    	/**
             * Launch the application.
             */
    	public static void main(String[] args) {
    		EventQueue.invokeLater(new Runnable() {
    			public void run() {
    				try {
    					carburant frame = new carburant();
    					frame.setVisible(true);
    				} catch (Exception e) {
    					e.printStackTrace();
    				}
    			}
    		});
    	}
     
    	/**
             * Create the frame.
             */
    	public carburant() {
     
    		String codes[]={"Gazol" , "SP_98", "SP_95" , "GPL"};
     
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		setBounds(100, 100, 450, 300);
    		contentPane = new JPanel();
    		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    		setContentPane(contentPane);
    		contentPane.setLayout(null);
     
    		JLabel lblCarburant = new JLabel("Carburant");
    		lblCarburant.setFont(new Font("Tahoma", Font.PLAIN, 20));
    		lblCarburant.setBounds(180, 21, 108, 25);
    		contentPane.add(lblCarburant);
     
    		JLabel lblVolume = new JLabel("type de carburant :");
    		lblVolume.setBounds(30, 69, 120, 14);
    		contentPane.add(lblVolume);
     
    		JLabel lblPrixDuLitre = new JLabel("Volume :");
    		lblPrixDuLitre.setBounds(30, 94, 71, 14);
    		contentPane.add(lblPrixDuLitre);
     
    		JLabel lblRelevkm = new JLabel("relev\u00E9_km :");
    		lblRelevkm.setBounds(30, 119, 86, 14);
    		contentPane.add(lblRelevkm);
     
    		JLabel lblMontantplein = new JLabel("montant_plein :");
    		lblMontantplein.setBounds(30, 144, 109, 14);
    		contentPane.add(lblMontantplein);
     
    		final JComboBox comboBox = new JComboBox(codes);
    		comboBox.setBounds(160, 66, 86, 20);
    		contentPane.add(comboBox);	
     
    		textField_1 = new JTextField();
    		textField_1.setBounds(160, 91, 86, 20);
    		contentPane.add(textField_1);
    		textField_1.setColumns(10);
     
    		textField_2 = new JTextField();
    		textField_2.setBounds(160, 116, 86, 20);
    		contentPane.add(textField_2);
    		textField_2.setColumns(10);
     
    		textField_3 = new JTextField();
    		textField_3.setBounds(160, 141, 86, 20);
    		contentPane.add(textField_3);
    		textField_3.setColumns(10);
     
    		/*	
    			   String typecarb;
    			   int volume;
    			   int km;
    			   double montant;
     
    			   typecarb=comboBox.getSelectedItem().toString();
    			   volume= Integer.parseInt(textField_1.getText());
    			   km= Integer.parseInt(textField_2.getText());
    			   montant= Double.parseDouble(textField_3.getText());
     
    			  // System.out.println( typecarb +" "+ volume+" "+ km+""  +montant);
    			  Statement statement = conn.createStatement();
    			  st.executeUpdate = "INSERT INTO carburant (type_carburant,volume,releve_km,montant_plein ) VALUES ('"+typecarb+"','"+volume+"','"+km+"','"+montant+"')";
    				*/
     
     
    		JButton btnAjouter = new JButton("Ajouter");
    		btnAjouter.addActionListener(new ActionListener() {
    			public void actionPerformed(ActionEvent arg0) {
     
     
    				PreparedStatement ps=null;
    				try{
    				      ps=cn.preparestatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?)");
     
    				      ps.setString( textField_1.getText());
    				      ps.setString( textField_2.getText());
    				      ps.setString( textField_3.getText());
     
    				      ps.executeUpdate();
    				      ps.close();
    				}catch(Exception e){
    				      e.printStackTrace();
    				}
    			}
    		});
     
    		btnAjouter.setBounds(266, 204, 89, 23);
    		contentPane.add(btnAjouter);
     
     
    		JButton btnAnnuler = new JButton(" Annuler");
    		btnAnnuler.addActionListener(new ActionListener() {
    			public void actionPerformed(ActionEvent arg0) {
     
    				dispose();
    				acceuil acceuil4 = new acceuil();
    				acceuil4.setVisible(true);
    			}
    		});
    		btnAnnuler.setBounds(147, 204, 89, 23);
    		contentPane.add(btnAnnuler);
     
    		JButton btnAcceuil = new JButton("Accueil");
    		btnAcceuil.addActionListener(new ActionListener() {
    			public void actionPerformed(ActionEvent arg0) {
     
    				dispose();
    				acceuil acceuil2 = new acceuil();
    				acceuil2.setVisible(true);
    			}
    		});
    		btnAcceuil.setBounds(30, 204, 89, 23);
    		contentPane.add(btnAcceuil);

  12. #12
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     ps=cn.preparestatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?)");
     
    				      ps.setString( textField_1.getText());
    				      ps.setString( textField_2.getText());
    				      ps.setString( textField_3.getText());
    Déjà tu à un insert into de 4 colonnes, ou tu précises seulement 2 paramètres (les ? dans la requête) )!
    Et tu cherches à affecter 3 paramètres (alors qu'il n'y en a que 2).
    Et comme on la dit plusieurs fois, il faut mettre l'index de paramètre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     ps=cn.preparestatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?, ?, ?)");
     
    				      ps.setString( 1, comboBox..getSelectedItem() ); // paramètre 1
     
    				      ps.setString( 2, textField_1.getText()); // paramètre 2
    				      ps.setString( 3, textField_2.getText()); // paramètre 3
    				      ps.setString( 4, textField_3.getText()); // paramètre 4
    (Si tes colonnes sont bien des chaînes de caractères)
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  13. #13
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    ah oui d'accord je comprend mieux pour l'index de paramètre , je n'avais pas encore vu cela .
    Et tu cherches à affecter 3 paramètres (alors qu'il n'y en a que 2).
    par contre j'ai pas compris cette phrase ?

    il m'affiche encore ces 2 erreurs :

    Exception in thread "AWT-EventQueue-0" java.lang.Error: Problèmes de compilation non résolus :
    cn ne peut pas être résolu
    La méthode setString(int, String) du type PreparedStatement ne s'applique pas aux arguments (int, Object)

    merci beaucoup pour vos réponse aussi rapide ainsi que pour votre aide

  14. #14
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Alex1407 Voir le message
    ah oui d'accord je comprend mieux pour l'index de paramètre , je n'avais pas encore vu cela .
    par contre j'ai pas compris cette phrase ?
    Voilà le code que tu avais mis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     ps=cn.preparestatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?)");
     
    				      ps.setString( textField_1.getText());
    				      ps.setString( textField_2.getText());
    				      ps.setString( textField_3.getText());
    Tu as deux paramètres dans ta requête, représenté par les ?
    Et juste après tu mets des valeurs dans des paramètres par ps.setString(...) : or tu as trois appels de setString, donc trois paramètrès à priori.
    2 paramètres dans la requête et tu cherches à mettre des valeurs dans 3 paramètres...tu vois le truc pas normal ?

    Citation Envoyé par Alex1407 Voir le message

    il m'affiche encore ces 2 erreurs :

    Exception in thread "AWT-EventQueue-0" java.lang.Error: Problèmes de compilation non résolus :
    cn ne peut pas être résolu
    La méthode setString(int, String) du type PreparedStatement ne s'applique pas aux arguments (int, Object)

    merci beaucoup pour vos réponse aussi rapide ainsi que pour votre aide
    Ah oui, désolé, j'ai oublié de mettre le cast vers String (c'est bien des String les valeurs dans ta combo si j'ai bien lu ton code ?), et j'ai fait une faute de frappe (mis 2 points au lieu d'un) :

    donc au lieu de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ps.setString( 1, comboBox..getSelectedItem() ); // paramètre 1
    il faudrait mettre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ps.setString( 1, (String)comboBox.getSelectedItem() ); // paramètre 1
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  15. #15
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    Ah oui d'accord , j'ai compris merci

    il me reste encore cette erreur :

    Exception in thread "AWT-EventQueue-0" java.lang.Error: Problème de compilation non résolu : cn ne peut pas être résolu

    Une petite question , si je saisie du int dans mes jtextfield cela pourrais causer une erreur lors de l’exécution don mon application ou de l'insertion dans ma bd ?

    Merci pour votre aide

  16. #16
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Alex1407 Voir le message
    Ah oui d'accord , j'ai compris merci

    il me reste encore cette erreur :

    Exception in thread "AWT-EventQueue-0" java.lang.Error: Problème de compilation non résolu : cn ne peut pas être résolu
    cn c'est une variable qui représente la connexion à ta base : je sais pas ou tu réalises ta connexion et dans quelle variable tu stockes cette connexion, mais il faut que tu t'arranges pour que cn pointe dessus (en la passant en paramètre de la méthode qui fait cette requête par exemple)

    Citation Envoyé par Alex1407 Voir le message

    Une petite question , si je saisie du int dans mes jtextfield cela pourrais causer une erreur lors de l’exécution don mon application ou de l'insertion dans ma bd ?

    Merci pour votre aide
    Le problème n'est pas la saisie mais plutôt dans la transmision des valeurs :
    - un JTextField est un composant qui permet de saisir des String (même si tu tapes que des chiffres dans le champs, ça reste une String
    - il y a des composants qui permettent de saisir du nombre, ou d'autres types (JSpinner, JFormattedTextField, JCheckbox...)
    - tu peux convertir la String obtenue par un JTextfield dans le type voulu (Integer.valueOf(..) par exemple)
    - l'important est de passer le paramètre à ton statement dans le type correct (celui de la donnée dans la base), d'ou ma remarque dans un post précédent
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  17. #17
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    j'ai créé une class connexion dans mon programme , ou cn est bien reconnue , alors que dans ma jframe non .

    Comment pointer sur ma classe connexion ? enfin si c'est possible .

    Merci beaucoup

  18. #18
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Tu dois transférer ta variable en l'endroit ou elle se trouve vers l'endroit ou tu en as besoin, ( ou éventuellement, à l'endroit ou tu en as besoin aller la chercher la ou elle se trouve...)

    Par exemple, comme je l'ai déjà dit, en la passant en argument de ta méthode qui fait la requête... évidemment j'ai pas tout ton code donc je ne peux être plus précis...

    Si j'avais un indice sur la façon que tu stockes ta connexion et de la classe concernée, peut être que je pourrais être plus précis...
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  19. #19
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

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

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par Alex1407 Voir le message
    j'ai créé une class connexion dans mon programme , ou cn est bien reconnue , alors que dans ma jframe non .

    Comment pointer sur ma classe connexion ? enfin si c'est possible .

    Merci beaucoup
    En tout cas, tu es trop théorique. Le code parle mieux que les belles phrase simple.
    Moi je procède de même de la sorte. Je crée une classe connexion dans laquelle je déclare une variable (généralement une variable de classe). je me connecte une seule fois au demarrage et partout où j'aurai besoin d'utiliser ma base de données je ne fais appel qu'à cette variable.
    Passe ton code, pour permettre à tous d'être precis.
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  20. #20
    Membre habitué Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Points : 149
    Points
    149
    Par défaut
    voici mon code de la classe connexion , désoler je suis loin d’être bon en java ..........

    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
    38
    39
     
    import java.sql.*;
    import java.sql.DriverManager;
    import java.sql.SQLException;
     
    public class connexion{
     
    public static void main (String[] args) {
     
    	try {
     
    		Class.forName("com.mysql.jdbc.Driver");
     
    		String url = "jdbc:mysql://localhost/vehicules";
    		String user = "root";
    		String passwd = "";
     
    	      Connection cn = DriverManager.getConnection(url, user, passwd);
     
    		System.out.println(" connexion etablie ! felicitation :)");
    		System.out.println("***********************************");
     
     
    		//   Requete de test afin de voir si la base de donnees est bien connectée
     
    		/*Statement st = cn.createStatement();
    		st.executeUpdate("insert into carburant(type_carburant,volume,relever_km,montant) values ('essence','20','20000','30')");
    		System.out.println("bien executée");*/
     
     
    	}catch(ClassNotFoundException e) {
    		System.out.println("erreur de driver");
    	}catch(SQLException e) {
    		System.out.println("erreur de la data base !!");
    	}
     
     }
     
    }
    merci beaucoup

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

Discussions similaires

  1. Récupérer des données pour les insérer dans un schéma "radar"
    Par Onex3891 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/10/2013, 18h45
  2. Réponses: 4
    Dernier message: 20/06/2009, 11h26
  3. [MySQL] Récupérer des données avec les SESSIONS
    Par dylanms dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 18/04/2009, 11h00
  4. Récupérer des données et les sauvegarder en *.txt
    Par littlepierre dans le forum Interfaces Graphiques
    Réponses: 31
    Dernier message: 17/03/2008, 12h56
  5. Réponses: 4
    Dernier message: 03/01/2008, 12h37

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