Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    11

    [MySQL] Problema Veloce sulle Date

    Ciao a tutti di nuovo,
    ho un piccolo problema con le date della definizione delle tabelle:

    perché questo funziona:
    Date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,

    ma questo no:
    Date DATE NOT NULL DEFAULT CURRENT_DATE,

    Nota: ho provato a sostiture la parte in neretto anche con:
    CURDATE()
    CURRENT_DATE()
    NOW()
    (cast NOW() AS DATE)
    (cast CURRENT_TIMESTAMP AS DATE)

    Qualche idea, please?

  2. #2
    Non credo si possa assegnare un default ad un campo date. Il default e' 0000-00-00

    Il valore lo devi assegnare non per default ma con assegnazione esplicita.

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    11
    Ok, ma perché l'assegnamento:
    perché questo funziona:
    Date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    (per DEFAULT) funziona correttamente?

  4. #4
    Originariamente inviato da berto_85
    Ok, ma perché l'assegnamento:
    perché questo funziona:
    Date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    (per DEFAULT) funziona correttamente?
    perche' il timestamp e' un campo "particolare"... cioe' senza essere chiamato in un update aggiorna da solo il campo datetime, che lo rappresenta, alla data/ora della modifica.

    In altre parole: e' un campo che se viene assegnato come default a current_timestamp provvedera' ad aggiornare il campo in modo da avere in automatico la data/ora dell'ultima modifica del record.

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

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    11
    Ok,
    grazie... credevo che comunque esistesse una cosa simile anche per la Data, tipo CURRENT_DATE.
    Scusami se sono pignolo ma il campo TimeStamp viene settato solo qual'ora si aggiunga una nuova record nella tabella, se aggiorno un singolo valore della record il valore della data non viene modificato.
    Grazie ancora, ciao

  6. #6
    Originariamente inviato da berto_85
    Ok,
    grazie... credevo che comunque esistesse una cosa simile anche per la Data, tipo CURRENT_DATE.
    Scusami se sono pignolo ma il campo TimeStamp viene settato solo qual'ora si aggiunga una nuova record nella tabella, se aggiorno un singolo valore della record il valore della data non viene modificato.
    Grazie ancora, ciao
    con un campo timestamp puoi ricavare quello che ti serve, data, ora o dataora. In caso che un update non modifichi alcun campo la data/ora del timestamp rimane invariata. Se ne modifica anche uno solo la data/ora verra' aggiornata.

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

  7. #7
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da berto_85
    Ok,
    grazie... credevo che comunque esistesse una cosa simile anche per la Data, tipo CURRENT_DATE.
    Scusami se sono pignolo ma il campo TimeStamp viene settato solo qual'ora si aggiunga una nuova record nella tabella, se aggiorno un singolo valore della record il valore della data non viene modificato.
    Grazie ancora, ciao
    Se vuoi che si aggiorni sulle modifiche devi impostare la clausola ON UPDATE oltre che DEFAULT

    http://database.html.it/guide/lezion.../tipi-di-dati/

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    11
    Grazie mille!!!

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.