[JAVA] Implémentation variable dans "INSERT"

Résolu/Fermé
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 - 8 avril 2011 à 10:53
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 - 8 avril 2011 à 16:17
Bonjour,

J'utilise un programme en java qui permet de lire un fichier et de rentrer les valeurs dans une base de donnée SQL, jusque la tout marche bien ^^
Mon problème est que je crée une variable ID qui est "censé" augmenter de 1 à chaque fois qu'on rentre une nouvelle valeur dans la table.
Malheureusement a chaque fois que je rentre une nouvelle valeur cette variable reste à 25 (valeur de départ).

================


import java.sql.*;
import java.io.*;

class LectureEcriture_BD{

	public static void main(String[] args){

		String filePath = "Second.txt";
		String pilote = "com.mysql.jdbc.Driver";
	
		try{
			BufferedReader buff = new BufferedReader(new FileReader(filePath));

			
				try { 
					String line;
					while ((line = buff.readLine())!= null){  // Lire le fichier ligne par ligne 
																			//La boucle se termine quand la méthode affiche "null"
						int id = 25; 
						System.out.println(line);
						try{
							Class.forName(pilote);
							Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost/renault","root","");
 							Statement instruction = connexion.createStatement();
							String SQL = "INSERT INTO valeurs_j1_c1(ID,Input) VALUES ("+id+","+line+")";
							instruction.executeUpdate(SQL);
						}
						catch (Exception e){
							System.out.println("Echec pilote : "+e);
						}
                                         id++;
					}				
					buff.close(); //Lecture fini donc on ferme le flux
				} 
				catch (IOException e){ 
					System.out.println(e.getMessage()); 
					System.exit(1);
				} 
		} 
		catch (IOException e) { 
			System.out.println(e.getMessage()); 
			System.exit(1); 
		}
	}
}





A voir également:

1 réponse

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
8 avril 2011 à 16:13
Bonjour,

C'est normal, d est initialisé en début de boucle while à 25. Pour démarrer à 25 et l'incrémenté de 1, il faut l'initialiser à 25 avant le while et id++ en fin de boucle.


;o)
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
8 avril 2011 à 16:17
Plus bête comme erreur y'a pas -_-

Merci xD
0