Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    65

    Aumentare in una sola mossa il Timestamp

    Ciao ho una tabella (che rappresenta un FORUM) così organizzata:

    INSERT INTO `pre_forum_topic` (`topic_id`, `topic_uri`, `forum_id`, `topic_title`, `when`, `topic_posts`,

    `first_post_user`, `first_post_when`, `last_post_user`, `last_post_when`, `topic_sticky`, `topic_locked`) VALUES

    (7, 'General-Forum-Rules', 5, 'General Forum Rules', 1217233799, 1, 'admin', 1217233799, 'admin', 1215937799, 0, 0).

    Vorrei aggiornare il timestamp di un tot di secondi. E, vedendo la tabella sopra, dovrei farlo nello stesso comando per tre volte.

    Qualche suggerimento?

    Grazie

  2. #2
    Allora, ho fatto un paio di prove:

    UPDATE pre_forum_topic SET when = ADDTIME(when, '00:00:05') WHERE id = 7

    Per fare l'update di 5 secondi, ovviamente devi aggiungere gli altri, per farli tutti in una query

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    65
    Ciao, ho provato ma:

    Errore

    query SQL:

    UPDATE pre_forum_topic SET WHEN = ADDTIME( WHEN , '00:00:05' ) WHERE id =7

    Messaggio di MySQL: Documentazione
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'when = ADDTIME(when, '00:00:05') WHERE id = 7' at line 1

    :master:

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    When è una parola riservata. O rinomini il campo o lo racchiudi tra backtick.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    65
    Ponendo che lo chiamassi WEN andrebbe bene così?

    UPDATE pre_forum_post SET WHEN = ADDTIME( WEN , '00:00:05' ) WHERE id =7

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Originariamente inviato da Matth1
    Ponendo che lo chiamassi WEN andrebbe bene così?

    UPDATE pre_forum_post SET WHEN = ADDTIME( WEN , '00:00:05' ) WHERE id =7
    Prova così.
    UPDATE pre_forum_post SET WEN = ADDTIME(WEN , '00:00:05' ) WHERE id =7

    Se non vuoi fare pasticci esegui la query equivalente sotto forma di select.

    es.

    select *,addtime(wen,'00:00:05') as piu5 from pre_forum_post

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    65
    Ciao grazie ancora.
    Questa è nel mio caso (vedi tabella) il comando giusto:

    UPDATE pre_forum_topic SET WEN = ADDTIME(WEN , '00:00:05' ) WHERE topic_id =7

    grz ancora

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    65
    Ciao sono stato precipitoso io.
    Il comando che mi avevate suggerito in realtà mi porta ad avere i topic datati nel 1970!

    Infatti il numero di time è 581006 e quello dal quale volevo partire 1217233799.

    probabilmente non mi ero spiegato io ma io vorrei partendo ad esempio da 1217233799 avere una funzione standar che mi permetta di aumentare di 2160000 secondi il time di partenza.

    E' possibile?

    grazie ancora

  9. #9
    Così no?
    UPDATE pre_forum_topic SET WEN = WEN + 2160000 WHERE topic_id =7

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    65
    Ciao direi che questo è il comando giusto!

    grazie

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.