Re: Elaborare query con molti record
Fabio Serra <[email protected]>
| Newsgroups | gmane.comp.cms.cold-fusion.devel.italian |
|---|---|
| Message-ID | <CANWq04anVhedTY3Z1QDKSQJCCoib1N3YcFSjqvVhv3mUUjh2fg@mail.gmail.com> |
metti i puntini come dico io :-) 2012/5/4 Puglia Marco <[email protected]> > > > Quando dici “quello che ha pronto” cosa intendi? All’interno del loop > scrivo delle cose sul browser, quando le visualizza? Ogni tot tempo? Ogni > tot byte? Quando ne ha voglia, se ne ha voglia?**** > > ** ** > > Grazie J**** > > ** ** > > ================================ > *Marco Puglia > **Project Manager > **Business-e S.r.l. <http://www.business-e.it/>* (an Itway Group Company) > > Via F.lli Lumière, 65 - 48010 Ravenna**** > > Tel. +39 0544.460413 - Fax +39 0544.272297**** > > Cell. 348 4759233**** > > > *Italy*, *France*, *Spain*, *Portugal, Greece, Turkey* > Ravenna, Milano, Trento, Bari, Massa, Roma > Paris, Barcelona, Madrid, Lisboa, Athina, Istanbul, Ankara > ================================**** > > ** ** > > *Da:* [email protected] [mailto:[email protected]] *Per > conto di *CiBer > *Inviato:* giovedì 3 maggio 2012 19:49 > > *A:* [email protected] > *Oggetto:* Re: Elaborare query con molti record**** > > ** ** > > **** > > cflush con l'opzione interval=n ti manda dati verso il webserver e quindi > il browser ogni n bytes da presentare, per cui metterlo all'interno del > loop non ha alcun senso. > Se vuoi, invece, avere un output "a comando" devi mettere il solo tag > cfflush SENZA parametri, ed allora ha senso metterlo all'interno del loop > perché invia quello che ha pronto quando gli dici di inviare > CiBer > > Il 03/05/2012 18:32, Fabio Serra ha scritto: **** > > **** > > mettici qualcosa in output tipo dei puntini**** > > ... <cfflush interval="10"> **** > > 2012/5/3 Puglia Marco <[email protected]> > > **** > > ** ** > > In effetti così sembra funzionare, però non sono ancora riuscito a capire > bene il funzionamento di <cfflush>, se lo metto dentro il loop della query > in questo modo:**** > > <cfloop query="elenco">**** > > <cfset midean13=elenco.codiceean>**** > > <cfquery name="trova" datasource="liberamente">**** > > select * from libridb where > idean13='#midean13#'**** > > </cfquery>**** > > <cfif trova.recordcount eq 1>**** > > <cfoutput>#midean13#</cfoutput> non trovato > (da aggiungere)<br>**** > > </cfif>**** > > <cfflush interval="10">**** > > </cfloop>**** > > **** > > Non mi mostra niente durante l’elaborazione, rimane fermo per qualche > secondo e poi visualizza la pagina a loop concluso.**** > > Come mai?**** > > **** > > ================================ > *Marco Puglia > **Project Manager > **Business-e S.r.l. <http://www.business-e.it/>* (an Itway Group Company) > > Via F.lli Lumière, 65 - 48010 Ravenna**** > > Tel. +39 0544.460413 - Fax +39 0544.272297**** > > Cell. 348 4759233**** > > > *Italy*, *France*, *Spain*, *Portugal, Greece, Turkey* > Ravenna, Milano, Trento, Bari, Massa, Roma > Paris, Barcelona, Madrid, Lisboa, Athina, Istanbul, Ankara > ================================**** > > **** > > *Da:* [email protected] [mailto:[email protected]] *Per > conto di *Fabio Serra > *Inviato:* mercoledì 25 aprile 2012 12:56 > *A:* [email protected] > *Oggetto:* Re: Elaborare query con molti record**** > > **** > > **** > > Ma dopo quanto tempo ti va in time-out? Senza impelagarti in altre cose > hai aumentato il timeout di coldfusion ed usato cfflush per non far andare > in tiimeout il browser?**** > > **** > > All'inizio della procedura metti un bel**** > > **** > > <cfsetting requestTimeOut = "1800"> numero di secondi**** > > **** > > poi dentro il loop della query metti un <cfflush>**** > > **** > > così manda sempre al browser qualcosa e non va in timeout. Guardati bene > cfflush dove puoi specificarli ogni quanti byte mandare qualcosa al browser > etc etc. **** > > Comunque in questo modo il browser non va mai in timeout e neanche > coldfusion. Dovresti aver risolto.**** > > **** > > **** > > **** > > **** > > 2012/4/23 Puglia Marco <[email protected]>**** > > **** > > Vi pongo questo quesito che mi attanaglia ormai da diverso tempo.**** > > **** > > Situazione**** > > Ho una query che estrare i dati da una tabella su Mysql (circa 800.000 > record).**** > > **** > > Necessità**** > > Per ogni record estratto, devo controllare se esiste l’ID su un’altra > tabella, in caso negativo vado ad aggiungere il record sulla seconda > tabella.**** > > **** > > Problema**** > > Se eseguo un loop sulla query per tutti gli 800.000 record il browser va > in timeout.**** > > Ho provato a spezzare la query e ricaricare lo script ogni 10000 record, > ma quanto arrivo a 200.000 il browser mi dice che c’è un problema di loop. > **** > > Come posso risolvere?**** > > **** > > Grazie a tutti in anticipo per la risposta.**** > > **** > > **** > > ================================ > *Marco Puglia > **Project Manager > **Business-e S.r.l. <http://www.business-e.it/>* (an Itway Group Company) > > Via F.lli Lumière, 65 - 48010 Ravenna**** > > Tel. +39 0544.460413 - Fax +39 0544.272297**** > > Cell. 348 4759233**** > > > *Italy*, *France*, *Spain*, *Portugal, Greece, Turkey* > Ravenna, Milano, Trento, Bari, Massa, Roma > Paris, Barcelona, Madrid, Lisboa, Athina, Istanbul, Ankara > ================================**** > > **** > > **** > > > > **** > > **** > > -- **** > > Fabio Serra > [email protected] > http://faser.net**** > > ** ** > > > > **** > > ** ** > > -- > Fabio Serra > [email protected] > http://faser.net**** > > **** > > > > -- Fabio Serra [email protected] http://faser.net