R: Elaborare query con molti record
"Puglia Marco" <[email protected]>
| Newsgroups | gmane.comp.cms.cold-fusion.devel.italian |
|---|---|
| Message-ID | <28CCFBE04D70AC47A1CE899BDF82809F01A146CE@bera-mail.businesse.local> |
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 <tel:%2B39%200544.460413> - Fax +39 0544.272297 <tel:%2B39%200544.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 <tel:%2B39%200544.460413> - Fax +39 0544.272297 <tel:%2B39%200544.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