Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Ricerca dati da DB Access

    Salve a tutti sono nuovo del forum e della programazione in generale, sto realizzando una piccola applicazione che mi permette(rebbe) di inserire dati su un db access utilizzando una interfaccia jsp.
    Il problema che incontro è nello sviluppo della funzione di ricerca, poichè non riesco ad impostarla come dico io!
    In sostanza ho circa una decina di campi di scelta (menu a tendina), che sono poi i valori che vanno passati alla query.Se scelgo uno solodi questi valori il problema non si pone, ma se volessi fare un filtro con tutti i records di uno o più campi di una certa tabella? ad esempio, cliente "X" piuttosto che tutti i clienti, città Y piuttosto che tutte le città..
    Il mio problema riguarda la "tecnica" (magari degli IF nidificati, non so...) per evitare di scrivere tante query quante sono le combinazioni ottenibili per ogni campo con la combinazione "cliente X"/"tutti i clienti"
    Scusate la confusione ma sono 4 ore che fumo davanti almonitor..GRAZIE

  2. #2
    allora... si risolve in maniera mooolto semplice (se ho capito il problema)
    supponiamo che hai i campi di ricerca : nome cognome provincia
    allora fai cosi
    ti prendi tutti i parametri dal form
    ti crei prima una query iniziale
    codice:
    String sql="select * from tabella where ";
    poi ti fai una serie di if, ma non nidificati.
    codice:
    boolean entrato=false;
    fai cosi
    codice:
    if (!nome.equals(""))
    {
       sql+="nome="'+nome+'";
       entrato=true;
    }
    if (!cognome.equals(""))
      if (entrato)
         sql+=" and cognome="'+cognome+'";
      else
     {
        sql+=" cognome="'+cognome+'";
        entrato=true;
     }
    if (!provincia.equals(""))
      if (entrato)
          sql+=" and provincia="'+provincia+'";
      else
      {
        sql+=" provincia="'+provincia+'";
        entrato=true;
      }
    sql+=";"; //non ricordo se access vuole il ; finale alla query (per esempio mysql lo vuole, oracle no... io ho usato questi due :D )
    dovrebbe funzionare...
    anch'io ho fatto un piccolo motore di ricerca e l'ho fatto cosi e funzionava...
    ora il codice l'ho riscritto senza guardare il mio, ma dovrebbe essere giusto...
    se non va fammi sapere che controllo meglio


    ps... ho modificato il codice... mi sono confuso un attimo con javascript... non è != "" ma !nome.equals("")

  3. #3
    Grazie mille lo provo immediatamente, tanto farò nottata, con questo caldo..
    Ti faccio sapere!!

    Marco

  4. #4
    Lo spunto era OTTIMO!!!
    Con qualche modifichetta qua e la ha funzionato alla grande!!

    GRAZIE MILLE!!!


  5. #5
    perfetto!!! sono contento!!!

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.