Bonjour tout le monde, j'ai un soucis avec mon programme, je souhaite récupérer les données sur une table pour les enregistrer dans une autre, mais avant d'enregistrer ( Insert into) je veux faire un test pour voir si les données existe deja ou pas. ci après une partie du 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
20
21
22
23
24
25
26
27
28
29
30
31
32
// ****************** Connexion a la première base de données  ***************
	String url  = "jdbc:mysql://localhost:3306/zaindb";
	conn = DriverManager.getConnection(url, "root", "");
 
	System.out.println("Connexion à zain : " + conn);
 
	stmt = conn.createStatement();
	rset = stmt.executeQuery("SELECT Id_alarm,Nom_site,Intitule_alarm,Date_heure,Num_ticket FROM list_alarm" );
        String valeur ="";String valeur1 ="";String valeur2 ="";String valeur3 ="";String valeur4 ="";
	String val ="";
 
        while (rset.next()) {
 
        	valeur = rset.getString("Id_alarm");valeur1 = rset.getString("Nom_site");
        	valeur2 = rset.getString("Intitule_alarm");valeur3 = rset.getString("Date_heure");
        	valeur4 = rset.getString("Num_ticket");
        	// ******** Connexion a la deuxieme base de données **********************
        	String url1  = "jdbc:mysql://localhost:3306/zaindb1";		
    		conn = DriverManager.getConnection(url1, "ibra", "");
    		stmt = conn.createStatement();
    		ResultSet rset1;	
//    		 *********  test: vérifier si l'alarme existe avant d'ajouter ************ 	
    		rset1 = stmt.executeQuery("SELECT Id_alarm FROM alarm_list" );
     		while (rset1.next()) {
    		val = rset.getString("Id_alarm");
 
    		if (valeur != val){
 
    			stmt.executeUpdate("INSERT INTO `alarm_list` ( `Id_alarm` , `N_site` , `Int_alarm` , `Date_heure` ) VALUES ("+ valeur+",'"+ valeur1+"','"+ valeur2+"','"+ valeur3+"')");
    			} 
    		}
    	}