Besoin d'aide requête Java...
aurik
-
aurik -
aurik -
Tout d'abord bonjour et merci pour se très bon site !
Mon problème est le suivant. J'ai une classe (ci-joint) qui doit traiter les 5 personne présente dans ma table (divers traitement comme vérification de présence/update/delete)
Mais au lieux de traiter les 5 pers il ne traite que la 1ère....
Je pense que cela viens de statement que j'utilise plusieurs fois...
Si quelqu'un pouvais éclairer ma lanterne se serais magnifique !
Merci d'avance je suis désespéré ^^
Code Java :
public int[] Cloture(int chx) throws Exception
{
String nir;
String nom;
String prenom;
String c_eff ;
String montremun;
String pi;
String datepaie;
int iadm = 0;
int iup = 0;
int idel = 0;
int Tres [] = new int[3];
ResultSet rs, rs1;
Statement stmt = access.ouvrir();
String requete = "SELECT fin_avpec.nir , fin_avpec.nomfam, fin_avpec.prenom, " +
" fin_avpec.c_eff, fin_avpec.montremun," +
" fin_avpec.pi, fin_avpec.datepaie" +
" FROM fin_avpec" ;
if (chx == 1)
{
requete = requete + " WHERE fin_avpec.err = '1'";
}
else
{
requete = requete + " WHERE fin_avpec.err IN ('2','3')";
}
try
{
rs = stmt.executeQuery(requete);
while (rs.next())
{
iadm++;
nir= rs.getString(1).trim();
nom= rs.getString(2).trim();
prenom= rs.getString(3).trim();
c_eff= rs.getString(4).trim();
montremun= rs.getString(5).trim();
pi= rs.getString(6).trim();
datepaie= rs.getString(7).trim();
/////////////////////////////////////////
System.out.println(rs.getString(1).trim());
////////////////////////////////////////
requete = "SELECT COUNT(administre.nir)" +
" FROM administre" +
" WHERE administre.nir = '"+nir+"'" ;
//" AND administre.nomfam = '"+nom+"'";
rs1 = stmt.executeQuery(requete);
rs1.next();
if (rs1.getInt(1) != 0)
{
requete = "SELECT COUNT(mvtant.nir)" +
" FROM mvtant" +
" WHERE mvtant.nir = '"+nir+"'"+
" AND mvtant.c_mouvant = 'RECATA'" +
" AND mvtant.textmvtant[1,2] = '01'" +
" AND mvtant.textmvtant[3,10] = '"+montremun+"'";
rs1 = stmt.executeQuery(requete);
rs1.next();
/* if (rs1.getInt(1) == 0)
{
requete = "SELECT COUNT(adm_mouvement.nir)" +
" FROM adm_mouvement" +
" WHERE adm_mouvement.nir = '"+nir+"'"+
" AND adm_mouvement.c_mouvement = 'RECATA'" +
" AND adm_mouvement.texmvt[1,2] = '01'" +
" AND adm_mouvement.texmvt[3,10] = '"+montremun+"'";
rs1 = stmt.executeQuery(requete);
rs1.next();
if (rs1.getInt(1) == 0)
{
requete = "UPDATE fin_avpec" +
" SET err = 3" +
" WHERE fin_avpec.nir = '"+ nir +"'"+
" AND fin_avpec.nomfam ='"+ nom +"'"+
" AND fin_avpec.prenom ='"+ prenom +"'"+
" AND fin_avpec.c_eff ='"+ c_eff +"'"+
" AND fin_avpec.montremun ='"+ montremun +"'"+
" AND fin_avpec.pi ='"+ pi +"'"+
" AND fin_avpec.datepaie ='"+ datepaie+"'";
stmt.execute(requete);
rs1 = null;
iup++;
}
else
{
Suppression(nir, nom, prenom, c_eff, montremun, pi, datepaie);
idel++;
}
}
else
{
Suppression(nir, nom, prenom, c_eff, montremun, pi, datepaie);
idel++;
}*/
}
else
{
requete = "UPDATE fin_avpec" +
" SET err = 2" +
" WHERE fin_avpec.nir = '"+ nir +"'"+
" AND fin_avpec.nomfam ='"+ nom +"'"+
" AND fin_avpec.prenom ='"+ prenom +"'"+
" AND fin_avpec.c_eff ='"+ c_eff +"'"+
" AND fin_avpec.montremun ='"+ montremun +"'"+
" AND fin_avpec.pi ='"+ pi +"'"+
" AND fin_avpec.datepaie ='"+ datepaie+"'";
stmt.execute(requete);
iup++;
}
rs1 = null;
Tres[0] = iadm;
Tres[1] = iup;
Tres[2] = idel;
return Tres;
}
}
catch (SQLException e)
{
e.getMessage();
}
finally
{
stmt.close();
access.fermer();
}
return null;
}
Mon problème est le suivant. J'ai une classe (ci-joint) qui doit traiter les 5 personne présente dans ma table (divers traitement comme vérification de présence/update/delete)
Mais au lieux de traiter les 5 pers il ne traite que la 1ère....
Je pense que cela viens de statement que j'utilise plusieurs fois...
Si quelqu'un pouvais éclairer ma lanterne se serais magnifique !
Merci d'avance je suis désespéré ^^
Code Java :
public int[] Cloture(int chx) throws Exception
{
String nir;
String nom;
String prenom;
String c_eff ;
String montremun;
String pi;
String datepaie;
int iadm = 0;
int iup = 0;
int idel = 0;
int Tres [] = new int[3];
ResultSet rs, rs1;
Statement stmt = access.ouvrir();
String requete = "SELECT fin_avpec.nir , fin_avpec.nomfam, fin_avpec.prenom, " +
" fin_avpec.c_eff, fin_avpec.montremun," +
" fin_avpec.pi, fin_avpec.datepaie" +
" FROM fin_avpec" ;
if (chx == 1)
{
requete = requete + " WHERE fin_avpec.err = '1'";
}
else
{
requete = requete + " WHERE fin_avpec.err IN ('2','3')";
}
try
{
rs = stmt.executeQuery(requete);
while (rs.next())
{
iadm++;
nir= rs.getString(1).trim();
nom= rs.getString(2).trim();
prenom= rs.getString(3).trim();
c_eff= rs.getString(4).trim();
montremun= rs.getString(5).trim();
pi= rs.getString(6).trim();
datepaie= rs.getString(7).trim();
/////////////////////////////////////////
System.out.println(rs.getString(1).trim());
////////////////////////////////////////
requete = "SELECT COUNT(administre.nir)" +
" FROM administre" +
" WHERE administre.nir = '"+nir+"'" ;
//" AND administre.nomfam = '"+nom+"'";
rs1 = stmt.executeQuery(requete);
rs1.next();
if (rs1.getInt(1) != 0)
{
requete = "SELECT COUNT(mvtant.nir)" +
" FROM mvtant" +
" WHERE mvtant.nir = '"+nir+"'"+
" AND mvtant.c_mouvant = 'RECATA'" +
" AND mvtant.textmvtant[1,2] = '01'" +
" AND mvtant.textmvtant[3,10] = '"+montremun+"'";
rs1 = stmt.executeQuery(requete);
rs1.next();
/* if (rs1.getInt(1) == 0)
{
requete = "SELECT COUNT(adm_mouvement.nir)" +
" FROM adm_mouvement" +
" WHERE adm_mouvement.nir = '"+nir+"'"+
" AND adm_mouvement.c_mouvement = 'RECATA'" +
" AND adm_mouvement.texmvt[1,2] = '01'" +
" AND adm_mouvement.texmvt[3,10] = '"+montremun+"'";
rs1 = stmt.executeQuery(requete);
rs1.next();
if (rs1.getInt(1) == 0)
{
requete = "UPDATE fin_avpec" +
" SET err = 3" +
" WHERE fin_avpec.nir = '"+ nir +"'"+
" AND fin_avpec.nomfam ='"+ nom +"'"+
" AND fin_avpec.prenom ='"+ prenom +"'"+
" AND fin_avpec.c_eff ='"+ c_eff +"'"+
" AND fin_avpec.montremun ='"+ montremun +"'"+
" AND fin_avpec.pi ='"+ pi +"'"+
" AND fin_avpec.datepaie ='"+ datepaie+"'";
stmt.execute(requete);
rs1 = null;
iup++;
}
else
{
Suppression(nir, nom, prenom, c_eff, montremun, pi, datepaie);
idel++;
}
}
else
{
Suppression(nir, nom, prenom, c_eff, montremun, pi, datepaie);
idel++;
}*/
}
else
{
requete = "UPDATE fin_avpec" +
" SET err = 2" +
" WHERE fin_avpec.nir = '"+ nir +"'"+
" AND fin_avpec.nomfam ='"+ nom +"'"+
" AND fin_avpec.prenom ='"+ prenom +"'"+
" AND fin_avpec.c_eff ='"+ c_eff +"'"+
" AND fin_avpec.montremun ='"+ montremun +"'"+
" AND fin_avpec.pi ='"+ pi +"'"+
" AND fin_avpec.datepaie ='"+ datepaie+"'";
stmt.execute(requete);
iup++;
}
rs1 = null;
Tres[0] = iadm;
Tres[1] = iup;
Tres[2] = idel;
return Tres;
}
}
catch (SQLException e)
{
e.getMessage();
}
finally
{
stmt.close();
access.fermer();
}
return null;
}
A voir également:
- Besoin d'aide requête Java...
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Eclipse java - Télécharger - Langages