Nico creation methodes vides #7
3 changed files with 180 additions and 234 deletions
6
.idea/dbnavigator.xml
generated
6
.idea/dbnavigator.xml
generated
|
|
@ -23,7 +23,11 @@
|
||||||
<autoscroll-to-editor value="false" />
|
<autoscroll-to-editor value="false" />
|
||||||
<autoscroll-from-editor value="true" />
|
<autoscroll-from-editor value="true" />
|
||||||
<show-object-properties value="true" />
|
<show-object-properties value="true" />
|
||||||
<loaded-nodes />
|
<loaded-nodes>
|
||||||
|
<connection connection-id="2cc612ec-5019-46bc-b400-7f0d1d32a97d">
|
||||||
|
<schema name="myny" object-types="function, procedure, view, table" />
|
||||||
|
</connection>
|
||||||
|
</loaded-nodes>
|
||||||
</component>
|
</component>
|
||||||
<component name="DBNavigator.Project.DatabaseConsoleManager">
|
<component name="DBNavigator.Project.DatabaseConsoleManager">
|
||||||
<connection id="2cc612ec-5019-46bc-b400-7f0d1d32a97d">
|
<connection id="2cc612ec-5019-46bc-b400-7f0d1d32a97d">
|
||||||
|
|
|
||||||
|
|
@ -22,162 +22,7 @@ public class DataBase {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* La methode de remplissage de la base de donnees
|
|
||||||
*/
|
|
||||||
public void fillDataBase(){
|
|
||||||
/*String sql="INSERT INTO 'myny.Test_Table'" +
|
|
||||||
" ('annee_numero_de_tirage', "+
|
|
||||||
" 'jour_de_tirage', "+
|
|
||||||
" 'date_de_tirage',"+
|
|
||||||
" 'date_de_forclusion',"+
|
|
||||||
" 'boule_1' ,"+
|
|
||||||
" 'boule_2' ,"+
|
|
||||||
" 'boule_3' ,"+
|
|
||||||
" 'boule_4' ,"+
|
|
||||||
" 'boule_5' ,"+
|
|
||||||
" 'numero_chance' ,"+
|
|
||||||
" 'combinaison_gagnante_en_ordre_croissant' ,"+
|
|
||||||
" 'nombre_de_gagnant_au_rang1' ,"+
|
|
||||||
" 'rapport_du_rang1' ,"+
|
|
||||||
" 'nombre_de_gagnant_au_rang2' ,"+
|
|
||||||
" 'rapport_du_rang2' ,"+
|
|
||||||
" 'nombre_de_gagnant_au_rang3' ,"+
|
|
||||||
" 'rapport_du_rang3' ,"+
|
|
||||||
" 'nombre_de_gagnant_au_rang4' ,"+
|
|
||||||
" 'rapport_du_rang4' ,"+
|
|
||||||
" 'nombre_de_gagnant_au_rang5' ,"+
|
|
||||||
" 'rapport_du_rang5' ,"+
|
|
||||||
" 'nombre_de_gagnant_au_rang6' ,"+
|
|
||||||
" 'rapport_du_rang6' ,"+
|
|
||||||
" 'numero_jokerplus' ,"+
|
|
||||||
" 'devise' ) VALUES";*/
|
|
||||||
String sql="INSERT INTO myny.Test_Table" +
|
|
||||||
" (annee_numero_de_tirage, "+
|
|
||||||
" jour_de_tirage, "+
|
|
||||||
" date_de_tirage,"+
|
|
||||||
" date_de_forclusion,"+
|
|
||||||
" boule_1 ,"+
|
|
||||||
" boule_2 ,"+
|
|
||||||
" boule_3 ,"+
|
|
||||||
" boule_4 ,"+
|
|
||||||
" boule_5 ,"+
|
|
||||||
" numero_chance ,"+
|
|
||||||
" combinaison_gagnante_en_ordre_croissant ,"+
|
|
||||||
" nombre_de_gagnant_au_rang1 ,"+
|
|
||||||
" rapport_du_rang1 ,"+
|
|
||||||
" nombre_de_gagnant_au_rang2 ,"+
|
|
||||||
" rapport_du_rang2 ,"+
|
|
||||||
" nombre_de_gagnant_au_rang3 ,"+
|
|
||||||
" rapport_du_rang3 ,"+
|
|
||||||
" nombre_de_gagnant_au_rang4 ,"+
|
|
||||||
" rapport_du_rang4 ,"+
|
|
||||||
" nombre_de_gagnant_au_rang5 ,"+
|
|
||||||
" rapport_du_rang5 ,"+
|
|
||||||
" nombre_de_gagnant_au_rang6 ,"+
|
|
||||||
" rapport_du_rang6 ,"+
|
|
||||||
" numero_jokerplus ,"+
|
|
||||||
" devise ) VALUES \n";
|
|
||||||
try {
|
|
||||||
Scanner sc = new Scanner(new File(filePath));
|
|
||||||
sc.useDelimiter(";|\\n"); //sets the delimiter pattern
|
|
||||||
int i=0,j;
|
|
||||||
long val;
|
|
||||||
String line=sc.nextLine();
|
|
||||||
line="";
|
|
||||||
String date, jour, mois, an;
|
|
||||||
while (sc.hasNext()){
|
|
||||||
j=(i% NBCOL)+1;
|
|
||||||
if(j==1) {
|
|
||||||
line=line+'(';
|
|
||||||
val=Long.parseLong(sc.next().replace(",","."));
|
|
||||||
line=line+val;
|
|
||||||
line=line+';';
|
|
||||||
}
|
|
||||||
if(j< NBCOL && j>1) {
|
|
||||||
if (j==2 ||j==11){
|
|
||||||
line=line+"\'"+sc.next().replace(",",".")+"\',";
|
|
||||||
}
|
|
||||||
else if (j==3 ||j==4){
|
|
||||||
date=sc.next().replace(",",".");
|
|
||||||
jour=date.substring(0,2);
|
|
||||||
mois=date.substring(3,5);
|
|
||||||
an=date.substring(6,10);
|
|
||||||
line=line+"\'"+an+"-"+mois+"-"+jour+"\',";
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
line=line+sc.next().replace(",",".");
|
|
||||||
line=line+';';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(j== NBCOL) {
|
|
||||||
line=line+"\'"+sc.next().replace(",",".")+"\'";
|
|
||||||
line=line+')';
|
|
||||||
line=line.replaceAll("\\s","");
|
|
||||||
line = line.replaceAll(";", ",");
|
|
||||||
if(sc.hasNext()) {
|
|
||||||
line = line+ ",";
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
line = line+ ";";
|
|
||||||
}
|
|
||||||
//System.out.println(line);
|
|
||||||
sql=sql+line;
|
|
||||||
line="";
|
|
||||||
}
|
|
||||||
i++;
|
|
||||||
//System.out.println(sc.nextLine());
|
|
||||||
//System.out.print(sc.next()); //find and returns the next complete token from this scanner
|
|
||||||
}
|
|
||||||
|
|
||||||
System.out.println(sql);
|
|
||||||
//System.out.println(sql);
|
|
||||||
/*CSVReader reader = new CSVReader(new FileReader(filePath));
|
|
||||||
String[] nextLine=reader.readNext();
|
|
||||||
while ((nextLine = reader.readNext()) != null) {
|
|
||||||
// nextLine[] is an array of values from the line
|
|
||||||
for (int j = 0; j < nextLine.length - 1; j++) {
|
|
||||||
if (j==0){
|
|
||||||
sql=sql+"(";
|
|
||||||
}
|
|
||||||
sql=sql+nextLine[j];
|
|
||||||
if (j==nextLine.length-1){
|
|
||||||
sql=sql+"),";
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
sql=sql+",";
|
|
||||||
}
|
|
||||||
//System.out.println(nextLine[j]);
|
|
||||||
}
|
|
||||||
sql=sql+";";
|
|
||||||
}
|
|
||||||
System.out.println(sql);
|
|
||||||
|
|
||||||
conn = DriverManager.getConnection(url);
|
|
||||||
if(conn!=null) {
|
|
||||||
Statement stmt = conn.createStatement();
|
|
||||||
stmt.executeQuery(sql);
|
|
||||||
conn.commit();
|
|
||||||
System.out.println("statement cree");
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
catch (Exception e){
|
|
||||||
System.out.println(e.getMessage());
|
|
||||||
}
|
|
||||||
try {
|
|
||||||
conn = this.getConnection();
|
|
||||||
if(conn!=null) {
|
|
||||||
Statement stmt = conn.createStatement();
|
|
||||||
stmt.executeQuery(sql);
|
|
||||||
conn.commit();
|
|
||||||
//conn.close();
|
|
||||||
System.out.println("statement cree");
|
|
||||||
}
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.out.println("oskour");
|
|
||||||
System.out.println(e.getMessage());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* La methode dimport de donnees depuis la base de donnees
|
* La methode dimport de donnees depuis la base de donnees
|
||||||
|
|
@ -309,6 +154,133 @@ public class DataBase {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* La methode de remplissage de la base de donnees
|
||||||
|
*/
|
||||||
|
public void fillDataBase(){
|
||||||
|
int i=0,j, nbValAj=0;
|
||||||
|
long val;
|
||||||
|
String line="";
|
||||||
|
String date, jour, mois, an;
|
||||||
|
long[][] mesL=new long[4000][NBCOL+1];
|
||||||
|
String[][]mesS=new String[4000][NBCOL+1];
|
||||||
|
Double[][]mesD=new Double[4000][NBCOL+1];
|
||||||
|
String sql="INSERT INTO myny.Test_Table" +
|
||||||
|
" (annee_numero_de_tirage, "+
|
||||||
|
" jour_de_tirage, "+
|
||||||
|
" date_de_tirage,"+
|
||||||
|
" date_de_forclusion,"+
|
||||||
|
" boule_1 ,"+
|
||||||
|
" boule_2 ,"+
|
||||||
|
" boule_3 ,"+
|
||||||
|
" boule_4 ,"+
|
||||||
|
" boule_5 ,"+
|
||||||
|
" numero_chance ,"+
|
||||||
|
" combinaison_gagnante_en_ordre_croissant ,"+
|
||||||
|
" nombre_de_gagnant_au_rang1 ,"+
|
||||||
|
" rapport_du_rang1 ,"+
|
||||||
|
" nombre_de_gagnant_au_rang2 ,"+
|
||||||
|
" rapport_du_rang2 ,"+
|
||||||
|
" nombre_de_gagnant_au_rang3 ,"+
|
||||||
|
" rapport_du_rang3 ,"+
|
||||||
|
" nombre_de_gagnant_au_rang4 ,"+
|
||||||
|
" rapport_du_rang4 ,"+
|
||||||
|
" nombre_de_gagnant_au_rang5 ,"+
|
||||||
|
" rapport_du_rang5 ,"+
|
||||||
|
" nombre_de_gagnant_au_rang6 ,"+
|
||||||
|
" rapport_du_rang6 ,"+
|
||||||
|
" numero_jokerplus ,"+
|
||||||
|
" devise ) VALUES \n";
|
||||||
|
try {
|
||||||
|
Scanner sc = new Scanner(new File(filePath));
|
||||||
|
sc.useDelimiter(";|\\n"); //sets the delimiter pattern
|
||||||
|
line=sc.nextLine();
|
||||||
|
line="";
|
||||||
|
while (sc.hasNext()){
|
||||||
|
j=(i% NBCOL)+1;
|
||||||
|
if(j==1) {
|
||||||
|
line=line+"(?,";
|
||||||
|
mesL[nbValAj][j]=Long.parseLong(sc.next());
|
||||||
|
}
|
||||||
|
if(j< NBCOL && j>1) {
|
||||||
|
line = line + "?,";
|
||||||
|
if (j==2 ||j==11){
|
||||||
|
//line=line+"\'"+sc.next().replace(",",".")+"\',";
|
||||||
|
mesS[nbValAj][j] = sc.next().replaceAll("\\s", "");
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (j==3 ||j==4){
|
||||||
|
date=sc.next().replace(",",".");
|
||||||
|
jour=date.substring(0,2);
|
||||||
|
mois=date.substring(3,5);
|
||||||
|
an=date.substring(6,10);
|
||||||
|
mesS[nbValAj][j]=an+"-"+mois+"-"+jour;
|
||||||
|
}
|
||||||
|
else if (j >= 13 && j <= 23 && j % 2 == 1) {//pour les col 3 et 4, il s'agit d'une date, on va donc passer dela forme jj-mm-aaaa a la forme aaaa-mm-jj
|
||||||
|
mesD[nbValAj][j] = Double.parseDouble(sc.next().replace(",", "."));
|
||||||
|
|
||||||
|
}
|
||||||
|
else {//pour les autres col, on va simplement les remplir
|
||||||
|
mesL[nbValAj][j] = Long.parseLong(sc.next().replaceAll("\\s", ""));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(j== NBCOL) {
|
||||||
|
nbValAj++;
|
||||||
|
line=line+"?)";
|
||||||
|
mesS[nbValAj][j] = sc.next().replaceAll("\\s", "");
|
||||||
|
if(sc.hasNext()) {
|
||||||
|
line = line+ ",";
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
line = line+ ";";
|
||||||
|
}
|
||||||
|
//System.out.println(line);
|
||||||
|
sql=sql+line;
|
||||||
|
line="";
|
||||||
|
}
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
System.out.println(sql);
|
||||||
|
}
|
||||||
|
catch (Exception e){
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
}
|
||||||
|
if (nbValAj>0) {//si on a des modifications
|
||||||
|
PreparedStatement ps = null;
|
||||||
|
try {
|
||||||
|
conn = this.getConnection();
|
||||||
|
if (conn != null) {
|
||||||
|
ps=conn.prepareStatement(sql);
|
||||||
|
for(int a=0;a<nbValAj;a++){//pour chaque case de chaque ligne ajoutée, on va ajouter la valeur
|
||||||
|
for(int b=1;b<=NBCOL;b++){//dans la declaration preparee, pour eviter les injections sql
|
||||||
|
if((b>1&&b<5)||b==11||b==25){
|
||||||
|
System.out.println("a: "+a+" et b: "+b);
|
||||||
|
ps.setString((a)*25+b, mesS[a][b]);
|
||||||
|
|
||||||
|
}
|
||||||
|
else if(b > 12 && b < 24 && b % 2 == 1){
|
||||||
|
System.out.println("a: "+a+" et b: "+b);
|
||||||
|
if (b == 13) {
|
||||||
|
System.out.println(mesD[a][b]);
|
||||||
|
}
|
||||||
|
ps.setString((a)*25+b, mesD[a][b]+"");
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
System.out.println("a: "+a+" et b: "+b);
|
||||||
|
ps.setString((a)*25+b, mesL[a][b]+"");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ps.executeQuery();//puis on execute la requete
|
||||||
|
System.out.println("update validee");
|
||||||
|
}
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.out.println("oskour into update");
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* La methode de mise a jour de la base de donnees
|
* La methode de mise a jour de la base de donnees
|
||||||
* @return sql String, contenant la requete SQL
|
* @return sql String, contenant la requete SQL
|
||||||
|
|
@ -434,12 +406,39 @@ public class DataBase {
|
||||||
return sql;
|
return sql;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* La methode de mise a jour de la base de donnees 2 qui evite les injections sql
|
||||||
|
* @return sql String, contenant la requete SQL
|
||||||
|
* @var mesL tableau dans lequel seront stockés tous les long
|
||||||
|
* @var mesS tableau dans lequel seront stockés tous les String
|
||||||
|
* @var mesD tableau dans lequel seront stockés tous les Double
|
||||||
|
* @var sc Scanner, l objet qui servira a lire le fichier csv
|
||||||
|
* @var line String, ligne contenant l'ajout a effectuer
|
||||||
|
* @var i int, un compteur de valeurs lues,
|
||||||
|
* @var j int, qui suit i%NBCOL
|
||||||
|
* @var a int, un compteur de lignes modifiees
|
||||||
|
* @var b int, un compteur de champs modifiees
|
||||||
|
* @var nbValAj int qui augmente si on doit ajouter des lignes
|
||||||
|
* @var date String, la valeur de la date lue
|
||||||
|
* @var jour String, le jour lu
|
||||||
|
* @var mois String, le mois lu
|
||||||
|
* @var an String, l annee lue
|
||||||
|
* @var anEntre long, valeur lue pour l annee et le numero de tirage. sert a definir si la valeur est a ajouter dans la table
|
||||||
|
* @var ps PreparedStatement pour executer la requete sans injection sql
|
||||||
|
* @var stmt Statement pour executer la requete de depart
|
||||||
|
*/
|
||||||
public String updateDataBasev2() throws FileNotFoundException {
|
public String updateDataBasev2() throws FileNotFoundException {
|
||||||
//Ligne maL=new Ligne();
|
//Ligne maL=new Ligne();
|
||||||
|
Statement stmt;
|
||||||
long[][] mesL=new long[4000][NBCOL+1];
|
long[][] mesL=new long[4000][NBCOL+1];
|
||||||
String[][]mesS=new String[4000][NBCOL+1];
|
String[][]mesS=new String[4000][NBCOL+1];
|
||||||
Double[][]mesD=new Double[4000][NBCOL+1];
|
Double[][]mesD=new Double[4000][NBCOL+1];
|
||||||
|
Scanner sc;
|
||||||
|
ResultSet rs;
|
||||||
|
long anEntre;
|
||||||
|
int i,j, nbValAj=0;
|
||||||
|
String date, jour, mois, an;
|
||||||
|
String line="";
|
||||||
String sql="INSERT INTO myny.Test_Table" + //le debut de la requete, specifiant laction a effectuer, la table et la db
|
String sql="INSERT INTO myny.Test_Table" + //le debut de la requete, specifiant laction a effectuer, la table et la db
|
||||||
" (annee_numero_de_tirage, "+
|
" (annee_numero_de_tirage, "+
|
||||||
" jour_de_tirage, "+
|
" jour_de_tirage, "+
|
||||||
|
|
@ -469,36 +468,27 @@ public class DataBase {
|
||||||
try {
|
try {
|
||||||
conn = this.getConnection(); //initialisation de la connexion
|
conn = this.getConnection(); //initialisation de la connexion
|
||||||
if(conn!=null) { //si la co est bonne
|
if(conn!=null) { //si la co est bonne
|
||||||
Scanner sc = new Scanner(new File(filePath)); //lire le fichier donne
|
sc = new Scanner(new File(filePath)); //lire le fichier donne
|
||||||
sc.useDelimiter(";|\\n"); //les delimiteurs seront ; et \n
|
sc.useDelimiter(";|\\n"); //les delimiteurs seront ; et \n
|
||||||
sc.nextLine(); //on ne conserve pas la premiere ligne, contenant les metadonnees
|
sc.nextLine(); //on ne conserve pas la premiere ligne, contenant les metadonnees
|
||||||
long cpt=0;
|
anEntre=Long.parseLong(sc.next()); //lecture de l id en haut du tableau(donc le plus grand, cest ce qu on a constate en lisant le csv
|
||||||
//Object[] champs;
|
stmt = conn.createStatement(); //recuperation du nb de lignes dans la table
|
||||||
int i=0,j=0, nbValAj=0;
|
rs = stmt.executeQuery("SELECT MAX(annee_numero_de_tirage) FROM myny.Test_Table;");
|
||||||
String date, jour, mois, an;
|
|
||||||
String line="";
|
|
||||||
long anEntre=Long.parseLong(sc.next()); //lecture de l id en haut du tableau(donc le plus grand, cest ce qu on a constate en lisant le csv
|
|
||||||
//System.out.println("numero en haut du fichier csv :"+anEntre);
|
|
||||||
Statement stmt = conn.createStatement(); //recuperation du nb de lignes dans la table
|
|
||||||
ResultSet rs = stmt.executeQuery("SELECT MAX(annee_numero_de_tirage) FROM myny.Test_Table;");
|
|
||||||
rs.next();
|
rs.next();
|
||||||
long maxvaldb=rs.getLong(1);
|
long maxvaldb=rs.getLong(1);
|
||||||
//System.out.println("numero max de la db :"+rs.getLong(1));
|
if (maxvaldb<0){
|
||||||
|
maxvaldb=0;
|
||||||
|
}
|
||||||
/*comme les nombres de la premiere col sont decroissants, le nb le plus grand est lu en premier,
|
/*comme les nombres de la premiere col sont decroissants, le nb le plus grand est lu en premier,
|
||||||
on va donc lire les nombres jusqua arriver a la plus haute valeur entree dans la table. On ne
|
on va donc lire les nombres jusqua arriver a la plus haute valeur entree dans la table. On ne
|
||||||
pourrait probablement pas utiliser cette methode pour remplir la table en entier*/
|
pourrait probablement pas utiliser cette methode pour remplir la table en entier*/
|
||||||
while(anEntre>maxvaldb) {
|
while(anEntre>maxvaldb&&sc.hasNext()) {
|
||||||
nbValAj++;//des quon rentre dans la boucle, on sait qu'on va devoir mettre a jour la table car cette valeur est>0
|
nbValAj++;//des quon rentre dans la boucle, on sait qu'on va devoir mettre a jour la table car cette valeur est>0
|
||||||
for (i = 0; i < NBCOL; i++) {//on remplit la ligne en effectuant une lecture par col
|
for (i = 0; i < NBCOL; i++) {//on remplit la ligne en effectuant une lecture par col
|
||||||
|
|
||||||
j = (i % NBCOL) + 1;
|
j = (i % NBCOL) + 1;
|
||||||
if (j == 1) {
|
if (j == 1) {
|
||||||
line = line + "(?,";//debut de la ligne a jouter
|
line = line + "(?,";//debut de la ligne a jouter
|
||||||
mesL[nbValAj][j]=anEntre;
|
mesL[nbValAj][j]=anEntre;
|
||||||
//champs[cpt++]=anEntre;
|
|
||||||
//line = line + anEntre;
|
|
||||||
//line = line + ';';//on met un point virgule mais on le remplacera plus tard
|
|
||||||
//sc.next();
|
|
||||||
}
|
}
|
||||||
if (j < NBCOL && j > 1) {//pour chaque colonne, on va faire en sorte de mettre le champ dans la onne mise en fore pour qu'il soit accepté par la db
|
if (j < NBCOL && j > 1) {//pour chaque colonne, on va faire en sorte de mettre le champ dans la onne mise en fore pour qu'il soit accepté par la db
|
||||||
line = line + "?,";
|
line = line + "?,";
|
||||||
|
|
@ -531,53 +521,23 @@ public class DataBase {
|
||||||
sql = sql + line + "\n";//on ajoute la ligne a la requete
|
sql = sql + line + "\n";//on ajoute la ligne a la requete
|
||||||
line = "";
|
line = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*if (j == 2 || j == 11) {
|
|
||||||
line = line + "\'" + sc.next().replace(",", ".") + "\',";
|
|
||||||
} else if (j == 3 || j == 4) {//pour les col 3 et 4, il s'agit d'une date, on va donc passer dela forme jj-mm-aaaa a la forme aaaa-mm-jj
|
|
||||||
date = sc.next().replace(",", ".");
|
|
||||||
jour = date.substring(0, 2);
|
|
||||||
mois = date.substring(3, 5);
|
|
||||||
an = date.substring(6, 10);
|
|
||||||
line = line + "\'" + an + "-" + mois + "-" + jour + "\',";
|
|
||||||
} else {//pour les autres col, on va simplement les remplir
|
|
||||||
line = line + sc.next().replace(",", ".");
|
|
||||||
line = line + ';';
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
/*if (j == NBCOL) {//pour la derniere col
|
|
||||||
line = line + "\'" + sc.next().replace(",", ".") + "\'";
|
|
||||||
line = line + ')';//on la remplit
|
|
||||||
line = line.replaceAll("\\s", "");//on remplace les caracteres qui nous derangent
|
|
||||||
line = line.replaceAll(";", ",");
|
|
||||||
anEntre = Long.parseLong(sc.next());//on lit le prochain id de l'entree
|
|
||||||
if (anEntre > maxvaldb) {//on defini si on doit encore ajouter des lignes a la requete
|
|
||||||
line = line + ",";
|
|
||||||
} else {//ou si on doit cloturer la requete
|
|
||||||
line = line + ";";
|
|
||||||
}
|
|
||||||
//System.out.println(line);
|
|
||||||
sql = sql + line + "\n";//on ajoute la ligne a la requete
|
|
||||||
line = "";
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println(sql);
|
System.out.println(sql);
|
||||||
if (nbValAj>0) {
|
if (nbValAj>0) {//si on a des modifications
|
||||||
PreparedStatement ps = null;
|
PreparedStatement ps = null;
|
||||||
try {
|
try {
|
||||||
conn = this.getConnection();
|
conn = this.getConnection();
|
||||||
if (conn != null) {
|
if (conn != null) {
|
||||||
ps=conn.prepareStatement(sql);
|
ps=conn.prepareStatement(sql);
|
||||||
for(int a=1;a<=nbValAj;a++){
|
for(int a=1;a<=nbValAj;a++){//pour chaque case de chaque ligne ajoutée, on va ajouter la valeur
|
||||||
for(int b=1;b<=NBCOL;b++){
|
for(int b=1;b<=NBCOL;b++){//dans la declaration preparee, pour eviter les injections sql
|
||||||
if((b>1&&b<5)||b==11||b==25){
|
if((b>1&&b<5)||b==11||b==25){
|
||||||
System.out.println("a: "+a+" et b: "+b);
|
System.out.println("a: "+a+" et b: "+b);
|
||||||
ps.setString((a-1)*25+b, mesS[a][b]);
|
ps.setString((a-1)*25+b, mesS[a][b]);
|
||||||
|
|
||||||
}
|
}
|
||||||
else if(j > 12 && j < 24 && j % 2 == 1){
|
else if(b > 12 && b < 24 && b % 2 == 1){
|
||||||
System.out.println("a: "+a+" et b: "+b);
|
System.out.println("a: "+a+" et b: "+b);
|
||||||
ps.setString((a-1)*25+b, mesD[a][b]+"");
|
ps.setString((a-1)*25+b, mesD[a][b]+"");
|
||||||
}
|
}
|
||||||
|
|
@ -587,32 +547,14 @@ public class DataBase {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//conn.close();
|
ps.executeQuery();//puis on execute la requete
|
||||||
ps.executeQuery();
|
|
||||||
System.out.println("update validee");
|
System.out.println("update validee");
|
||||||
}
|
}
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
System.out.println("oskour into update");
|
System.out.println("oskour into update");
|
||||||
System.out.println(e.getMessage());
|
System.out.println(e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
/*System.out.println(sql);
|
|
||||||
if (nbValAj>0) {//on effectue la requete si on a des maj a faire
|
|
||||||
try {
|
|
||||||
conn = this.getConnection();
|
|
||||||
if (conn != null) {
|
|
||||||
stmt = conn.createStatement();
|
|
||||||
stmt.executeQuery(sql);
|
|
||||||
conn.commit();
|
|
||||||
//conn.close();
|
|
||||||
System.out.println("update validee");
|
|
||||||
}
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.out.println("oskour into update");
|
|
||||||
System.out.println(e.getMessage());
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
System.out.println("oskour update");
|
System.out.println("oskour update");
|
||||||
|
|
@ -621,8 +563,8 @@ public class DataBase {
|
||||||
return sql;
|
return sql;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void removeLines() throws FileNotFoundException{
|
public void removeLines(int i) throws FileNotFoundException{
|
||||||
String sql="delete from myny.Test_Table where annee_numero_de_tirage >2017027";
|
String sql="delete from myny.Test_Table where annee_numero_de_tirage >"+i;
|
||||||
try {
|
try {
|
||||||
conn = this.getConnection();
|
conn = this.getConnection();
|
||||||
if(conn!=null) {
|
if(conn!=null) {
|
||||||
|
|
|
||||||
|
|
@ -16,14 +16,14 @@ class DataBaseTest {
|
||||||
DataBase maDB=new DataBase();
|
DataBase maDB=new DataBase();
|
||||||
Connection maCo=maDB.getConnection();
|
Connection maCo=maDB.getConnection();
|
||||||
assertNotNull(maCo);
|
assertNotNull(maCo);
|
||||||
//maDB.fillDataBase();
|
maDB.fillDataBase();
|
||||||
Statement stmt= maDB.conn.createStatement();
|
Statement stmt= maDB.conn.createStatement();
|
||||||
ResultSet rs=stmt.executeQuery("SELECT Count(*) From myny.Test_Table");
|
ResultSet rs=stmt.executeQuery("SELECT Count(*) From myny.Test_Table");
|
||||||
rs.next();
|
rs.next();
|
||||||
long nbcolret= rs.getLong(1);
|
long nbcolret= rs.getLong(1);
|
||||||
//System.out.println("nb lignes (changer la ligne juste en dessous si on modifie le nb de lignes): "+rs.getInt("total"));
|
//System.out.println("nb lignes (changer la ligne juste en dessous si on modifie le nb de lignes): "+rs.getInt("total"));
|
||||||
System.out.println("nb lignes (changer la ligne juste en dessous si on modifie le nb de lignes): "+rs.getLong(1));
|
System.out.println("nb lignes (changer la ligne juste en dessous si on modifie le nb de lignes): "+rs.getLong(1));
|
||||||
assertEquals(1317,rs.getLong(1));
|
assertEquals(1321,rs.getLong(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
@ -72,7 +72,7 @@ class DataBaseTest {
|
||||||
@Test
|
@Test
|
||||||
public void removeLines() throws FileNotFoundException{
|
public void removeLines() throws FileNotFoundException{
|
||||||
DataBase maDB=new DataBase();
|
DataBase maDB=new DataBase();
|
||||||
maDB.removeLines();
|
maDB.removeLines(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
||||||
Reference in a new issue