<div dir="ltr">Ho delle semplici interfacce grafiche in QT che visualizzano i dati, permettono di navigare e fare delle ricerche. Quindi quando voglio fare una ricerca, non faccio altro che svuotare le caselle di testo presenti nella gui, uno scrive dentro il volore e lo script li associa al campo della tabella.<div>Non uso il metodo interno delle QT ma passo per SQLalchemy che mi permette di dialogare con postgres e sqlite senza cambiare nulla. Unica problema è proprio lato SQlite che mi pone un limite di 999 parametri ricercabili contemporaneamente.</div></div><div class="gmail_extra"><br><div class="gmail_quote">Il giorno 13 settembre 2014 20:25, aperi2007 <span dir="ltr"><<a href="mailto:aperi2007@gmail.com" target="_blank">aperi2007@gmail.com</a>></span> ha scritto:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF"><span class="">
    <br>
    <div>>Aggirerò il problema così:</div>
    <div>>memorizzo in un dizionario le coppie campi/valori che
      creano l'istanza di database in un dato momento. Così non dovrò
      cercare gli ID tramite un IN.</div>
    <div><br>
    </div></span>
    Non ho chiaro quello che devi fare, ma indubbiamente vi e' un limite
    nella lunghezza della espressione.<br>
    <br>
    Pero' se cosi' e' , e se come ho capito te memorizzi gli ID in una
    tabella (il tuo dizionario),<br>
    li puoi invocare cosi':<br>
    <br>
    where<br>
        campo1 IN (select valore from dizionario)<br>
    ;<br>
    <br>
    Se il problema e' la lunghezza della stringa SQL che non puo
    superare una certa lunghezza,<br>
    questa ultima sintassi dovrebbe funzionare.<br>
    <br>
    E forse potresti anche usare<br>
    <br>
    where<br>
       campo1 EXISTS (select valore from dizionario)<br>
    <br>
    A.<br>
    <br>
    <div>Il 13/09/2014 19:26, Luca Mandolesi ha
      scritto:<br>
    </div><div><div class="h5">
    <blockquote type="cite">
      <div dir="ltr">
        <div>
          <div><br>
          </div>
        </div>
        <div class="gmail_extra"><br>
          <div class="gmail_quote">Il giorno 13 settembre 2014 13:45,
            Andrea Peri <span dir="ltr"><<a href="mailto:aperi2007@gmail.com" target="_blank">aperi2007@gmail.com</a>></span>
            ha scritto:<br>
            <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Io non
              userei una serie smisurata di AND,<br>
              anche perche' metti a dura prova l'ottimizzatore della
              query.<br>
              <br>
              Proverei a usare invece il costrutto IN<br>
              <br>
              where<br>
               campo1 IN ('valore1','valore2','valore3',.....)<br>
            </blockquote>
            <div><br>
            </div>
            <div>No, non funzia, lo vede sempre come un eccesso di
              patametri</div>
            <div> </div>
            <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <br>
              Anche su postgres.<br>
            </blockquote>
            <div><br>
            </div>
            <div>Postgres digerisce anche i sassi. Non ha problemi</div>
            <div> </div>
            <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <br>
              prova e facci sapere se questo ammette piu valori di 999<br>
            </blockquote>
            <div><br>
            </div>
            <div><br>
            </div>
            <div>Aggirerò il problema così:</div>
            <div>memorizzo in un dizionario le coppie campi/valori che
              creano l'istanza di database in un dato momento. Così non
              dovrò cercare gli ID tramite un IN.</div>
            <div><br>
            </div>
            <div>Nel caso avessi un'istanza di database che corrisponde
              a tutti i record faro solo una query id > 0.</div>
            <div><br>
            </div>
            <div>Per eliminare per esempio più di 1000 record non farò
              altri che segmentare i delete in pacchetti da 500.</div>
            <div><br>
            </div>
            <div><br>
            </div>
            <div><br>
            </div>
            <div> </div>
            <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <span><font color="#888888"><br>
                  <br>
                  --<br>
                  -----------------<br>
                  Andrea Peri<br>
                  . . . . . . . . .<br>
                  qwerty àèìòù<br>
                  -----------------<br>
                </font></span></blockquote>
          </div>
          <br>
        </div>
      </div>
    </blockquote>
    <br>
  </div></div></div>

</blockquote></div><br></div>