Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    456

    Aiuto su logica su 2 query annidate dentro un bean

    Ciao,
    ho bisogno di sapere se è corretta la logica con la quale ho creato le cose, visto che ho dei malfunzionamenti che non capisco
    Ho un bean in cui faccio una query, poi ciclo il record e all'interno del ciclo faccio un'altra query usando nella WHERE uno dei valori ricavati dal record.
    Poi passo questi valori alla pagina jsp con 2 array.
    E' giusta la logica con cui creo le due liste di array?

    codice:
    String select = "select * bla bla";		
    		
    		PreparedStatement stmt = cn.prepareStatement(select);		
    		ResultSet rs = stmt.executeQuery();				
    		
    		
    			if(rs.next())
    			{	
    			rs.beforeFirst();				
    				
    				
    				 while(rs.next())					
    					{									
    					//creo la prima data lista ////////////////
    					
    					 ListaRecord.add( rs.getString("sezione"));
    					 ListaRecord.add( rs.getString("id"));				
    					 
    					
    // qui utilizzo uno dei valori del primo record per fare la seconda query/////
    String SezioneidselezionataS = rs.getString("id");
    					Sezioneidselezionata = Integer.parseInt(SezioneidselezionataS);
    					 
    					 SqlSelezioneMuscolo = "select * from muscoli where id = '" + Sezioneidselezionata + "' order by muscolo";
    					stmt = cn.prepareStatement(SqlSelezioneMuscolo);
    					ResultSet rsSelezioneMuscolo = stmt.executeQuery();	
    					
    					if(rsSelezioneMuscolo.next())
    					{
    						
    					rsSelezioneMuscolo.beforeFirst();
    
    					while (rsSelezioneMuscolo.next())
    					{
                                                   ///////////qui credo la seconda lista/////////////
    						ListaMuscoli.add(rsSelezioneMuscolo.getString("muscolo"));
    						ListaMuscoli.add(rsSelezioneMuscolo.getString("immagine"));						
    					}
    					}
    					
    					
    					}
    			
    		
    		
    			}

    E' corretta questa logica?

  2. #2
    Bè un po macchinosa perchè non effettuare un unica query con un inner join ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    456
    Hai ragione!
    Ho dato un'occhiata ed ho fatto una left join (visto che in alcuni casi non c'è corrispodenza tra le due tabelle ma devo comunque ottenere un record dalla prima tabella).
    Poi come faccio a stampare a video i risultati, consideranzo che la relazione è uno a molti?
    Nella prima tabella ho un record che si lega a molti record della seconda tabella.
    E ovviamente dovrei stamparli in modo che, visivamente, i molti record della seconda tabella, appaiano sotto il relativo record della prima tabella.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.