Bonjour,
Je veux parcourir la table pour trouver une certaine valeur et de le comparer à la valeur entrée.
si elle existe insert la requête en incrémentant la variable max de n avec +1 si non insert la requête et n=1 .
ce code est pour vérifier si la variable existe ou non et comparer les deux valeurs:
pondre le max de la valeur existante:
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 public boolean verif=false; public boolean verifer(){ DataBase s = DataBase.getInstance(); int numR1 =getnumR(); String req1 ="SELECT `numR` FROM `reference` WHERE `numR` = '"+numR1+"' "; try { Statement m= s.getConn().createStatement(); ResultSet r1 = m.executeQuery(req1); int numR0 = 0; while (r1.next()) { numR0 =r1.getInt("numR"); nbp++; } if(numR1==numR0){ System.out.println("numR exists! : " +numR0 ); verif=true; } else { System.out.println("numR is not existing "); verif=false; } rs1.close(); m.close(); } catch (SQLException e1) { e1.printStackTrace(); System.out.println("error validation numR: "+e1); verif=false; } return verif; }
insert dans la table:
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 public int maXnumR(){ DataBase s = DataBase.getInstance(); int numR= getnumR(); String req1 = "SELECT MAX('idrf') FROM `reference` WHERE `numR` = '"+numR+"' "; try { Statement m= s.getConn().createStatement(); ResultSet r1 = m.executeQuery(req1); while (r1.next()) { maxnumR =r1.getInt("idrf"); nbp++; } } catch (SQLException e1) { e1.printStackTrace(); System.out.println("maXnumR repetetion : "+e1); } return maxnumR; }
Problème :
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 public void remplir_reference(){ DataBase s = DataBase.getInstance(); String req3 ; int numR = getnumR(); int numA = getnumA(); int numV = getnumV(); String type_instal= setType_instal().toString(); String categorie=comboBox_categorie.getSelectedItem().toString(); Calendar calendar =new GregorianCalendar(); calendar.setTime(new Date()); int annee =calendar.get(Calendar.YEAR); System.out.println(annee); if(verif==true ){ int maxn=maXnumR(); int maxnplus = maxn +1 ; System.out.println("existe"); req3 ="INSERT INTO `reference` values ('"+numR+"','"+maxnplus+"','"+cin+"','"+numA+"','"+numV+"','"+type_instal+"','"+categorie+"','"+annee+"')"; try { Statement m= s.getConn().createStatement(); m.executeUpdate(req3); } catch (SQLException e1) { e1.printStackTrace(); System.out.println("remplir_reference si v=vrai: "+e1); } } if(verif ==false) { System.out.println("n'existe pas"); req3 ="INSERT INTO `reference` values ('"+numR+"',1,'"+cin+"','"+numA+"','"+numV+"','"+type_instal+"','"+categorie+"','"+annee+"')"; try { Statement m= s.getConn().createStatement(); m.executeUpdate(req3); } catch (SQLException e1) { e1.printStackTrace(); System.out.println("remplir_reference si v=false: "+e1); } } }
verif ==false
il m'affiche tout le temps : System.out.println("n'existe pas");
quel qu un peut m'aidez j'ai essayé tout et ça marche pas
merci d'avance
Partager