vérifier si une variable existe dans ma table mysql ou non
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:
Code:
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;
} |
pondre le max de la valeur existante:
Code:
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;
} |
insert dans la table:
Code:
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);
}
}
} |
Problème :
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 :cry:
merci d'avance