JavaFX + MySQL Generowanie pdf,Dwa zapytania sql w jednym buttonie

0

Witam.Mam problem z wygenerowanie dwóćh ResulSet-ów w jednej metodzie.Chciałbym Aby w raporciie były informacje z dwóch tabel z bazy połączonych polem ID_Projekt.Jeden select działał mi wczesniej wiec wstawiłem drugiegiego rs2.Bląd to column "ID_Projekt" is ambiguous i inne.

void raportButtonAction(ActionEvent event) {

        String Nazwa="";
        String dataroz="";
        String datazak="";
        String Kiero="";
        String Opis="";
        String Nazwazadania="";
        String dataroz2="";
        String datazak2="";
        String Status="";
        String Opiszadania="";
        
        int a=list.getSelectionModel().getSelectedItem().getIdP();
        
        String query= "SELECT * FROM `projekt`,`zadania` WHERE ID_Projekt ='"+a+"'";
        
        String query2= "SELECT * FROM `zadania` JOIN `projekt` ON (zadania.`ID_Projekt` = projekt.`ID_Projekt`) WHERE projekt.`ID_Projekt` ='" + a + "'";
        
        try{
       
        Document document=new Document() {};
        PdfWriter.getInstance(document,new FileOutputStream(FILE));
        final Font font = new Font(FontFactory.getFont(FontFactory.HELVETICA, BaseFont.CP1250, 20));
        final Font font2 = new Font(FontFactory.getFont(FontFactory.HELVETICA, BaseFont.CP1250, 16));
        document.open();
        Paragraph p1=new Paragraph("RAPORT \n\n\n",font);
        Paragraph p2=new Paragraph("Nazwa Projektu:"+"",font2);
        Paragraph p3=new Paragraph("Data rozpoczecia:"+"",font2);
        Paragraph p4=new Paragraph("Data zakonczenia:"+"",font2);
        Paragraph p5=new Paragraph("Kierownik:",font2);
        Paragraph p6=new Paragraph("Opis:\n\n",font2);
        Paragraph p7=new Paragraph("ZADANIA \n\n\n",font);
        Paragraph p8=new Paragraph("Nazwa:"+"",font2);
        Paragraph p9=new Paragraph("Data rozpoczecia:"+"",font2);
        Paragraph p10=new Paragraph("Data zakonczenia:"+"",font2);
        Paragraph p11=new Paragraph("Status zadania:"+"",font2);
        Paragraph p12=new Paragraph("Opis:"+"",font2);
        
        
        Class.forName("com.mysql.jdbc.Driver").newInstance();
            c = (Connection) DriverManager.getConnection("jdbc:mysql://" + databaseHost + ":3306", logindb, passdb);
            st = (Statement) c.createStatement();
            st.execute("USE mene");
            ResultSet rs = st.executeQuery(query);
            
            
            
           while (rs.next()) {
            
            
            Nazwa =rs.getString("Nazwa");
            p2.add(Nazwa);
            
            dataroz =rs.getString("Data_rozpoczecia");
            p3.add(dataroz);
            
            datazak =rs.getString("Data_zakonczenia");
            p4.add(datazak);
            
            Kiero =rs.getString("Kierownik_projektu");
            p5.add(Kiero);
            
            Opis =rs.getString("Opis");
            p6.add(Opis);
            
            
            
            
            System.out.println(datazak); 
            
           }
            
           
           ResultSet rs2=st.executeQuery(query2);
           
           
           
           while(rs2.next()) {
           
           
           
           Nazwazadania =rs.getString("Nazwa");
            p8.add(Nazwazadania);
            
            dataroz2 =rs.getString("Data_ropzpoczecia");
            p9.add(dataroz2);
            
            datazak2 =rs.getString("Data_zakonczenia");
            p10.add(datazak2);
            
            Status =rs.getString("Status_zadania");
            p11.add(Status);
            
            Opiszadania =rs.getString("Opis");
            p12.add(Opiszadania);
           }
            
        document.add(p1);
        document.add(p2);
        document.add(p3);
        document.add(p4);
        document.add(p5);
        document.add(p6);
        document.add(p7);
        document.add(p9);
          
        document.close();
        
        
        }
        catch(Exception e)
        {
            e.printStackTrace();
            
            
        }
    }
    
    
0

zacząłbym od tego, że tu:

document.add(p1);
document.add(p2);
document.add(p3);
document.add(p4);
document.add(p5);
document.add(p6);
document.add(p7);
document.add(p9);

nie dodajesz pol od p10 do p12 z drugiego zapytania.
ale poza tym cala metoda jest za duża, powinieneś ją rozbić na kilka mniejszych metod.

1 użytkowników online, w tym zalogowanych: 0, gości: 1