Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768

    spezzare una tabella in una TEMPORARY

    Ciao,

    ho dei problemi ad effettuare delle operazioni su una tabella quando raggiunge un gran numero di record (> 600.00). Le operazioni diventano lunghissime.
    Dato che a me servono solo una parte dei dati in essa memorizzati, mi chiedevo come fosse possibile prendere semplicemente i dati che mi occorrono e inserirli in una tabella temporanea su cui effettuare i calcoli.

    questa è la mia tabella:

    CREATE TABLE `visita` (
    `id` int(10) unsigned NOT NULL auto_increment,
    `pagina` varchar(255) NOT NULL default '',
    `referrer` varchar(255) NOT NULL default '',
    `ora` timestamp(14) NOT NULL,
    `utente` varchar(32) NOT NULL default '0',
    `esterno` int(1) NOT NULL default '0',
    KEY `id` (`id`)
    )

    io vorrei avere, per esempio, una tabella temporanea con tutti i record che hanno come ora il 20 febbraio 2005.

    Come procedo? :master:
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  2. #2
    codice:
    create temporary table temp
    select ....
    from ......
    where date_format(ora, '%Y-%m-%d') = '2005-02-20'
    order by quelchevuoi
    poi esegui il codice che ti serve sulla tabella temp.

    devi fare tutto nella stessa pagina. (of course)....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    ciao piero.mac

    volevo chiederti come mai nella risposta precendente dici di dover fare tutto nella stessa pagina?

    Se le operazioni le fa in altri file cosa cambia?

    Grazie

  4. #4
    Originariamente inviato da FrancescoMAR
    ciao piero.mac

    volevo chiederti come mai nella risposta precendente dici di dover fare tutto nella stessa pagina?

    Se le operazioni le fa in altri file cosa cambia?

    Grazie
    perche' le tabelle temporanee durano quanto dura la connessione. Cambiando pagina la connessione viene chiusa e la tabella cancellata.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    ma non esiste una connessione che rimane aperta come le variabili di sessione??

    ovvero che muore quando si chiude il browser...

    Ciao e grazie

  6. #6
    Forse l'ho trovata!!

    msql_pconnect

    (PHP 3, PHP 4 , PHP 5)
    msql_pconnect -- Open persistent mSQL connection
    Description
    int msql_pconnect ( [string server [, string username [, string password]]] )

    msql_pconnect() acts very much like msql_connect() with two major differences.

    First, when connecting, the function would first try to find a (persistent) link that's already open with the same host. If one is found, an identifier for it will be returned instead of opening a new connection.

    Second, the connection to the SQL server will not be closed when the execution of the script ends. Instead, the link will remain open for future use (msql_close() will not close links established by msql_pconnect()).

    Returns a positive mSQL persistent link identifier on success, or FALSE on error.

  7. #7
    Up to you..... se credi che sia cosi' semplice.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  8. #8
    pensi non funzioni...?

    io non ho ancora provato...

  9. #9
    Originariamente inviato da FrancescoMAR
    pensi non funzioni...?

    io non ho ancora provato...
    dovresti prima chiederti perche' devi fare una tabella temporanea "persistente" ... fai una tabella normale ... e poi capire bene cos'e' e come funziona una connessione persistente.

    E non e' detto che cio' serve a te sia lo stesso di quello che serviva a gasmor... se trovi una ricetta non e' che vai in farmacia a prendere quel medicinale... giusto?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  10. #10
    il mio problema è questo:

    ho realizzato un carrello che come tutti i carrelli memorizza i prodotti che un utente vuole acquistare in una tabella archiviando anche il relativo id di sessione...

    Una volta che l'utente decide di acquistare, tolgo i dati raccolti nella prima tabella e li verso in un'altra tabella contenete l'ordine definitivo.

    Ovviamente può succedere che se un utente inizia a riempire il carrello e poi abbandona il sito, nella prima tabella resteranno dati inutili (a meno che non li si voglia utilizzare per fini di statistica)...

    Questi dati a me non servono quindi vorrei capire se è possibile creare una tabella temporanea che scompaia nel caso in cui l'utente chiuda il sito in modo da non tener nel database dati inutili...

    (per ora ho risolto il problema rilevando l'ora di inserimento e quindi eliminando i record più vecchi di 12 ore)

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.