Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514

    [sql] Valore predefinito campo data

    Salve,
    vorrei in una tabella di un database mysql che il campo data assumesse come valore predefinito la data odierna. Qual'è la funzione sql che la restituisce?
    Ho provato con date ma mi scrive un desolante "0000-00-00"

    ciao e grazie
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  2. #2
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    time() il time stamp attuale.

    date('d-m-Y', time()); se vuoi formattarlo (dove 'd-m-Y' e' la formattazione che preferisci)
    http://it.php.net/manual/it/function.date.php

    poi dipende com'e' settato il campo nel db
    La vita e' uno switch();

  3. #3

    Re: [sql] Valore predefinito campo data

    Originariamente inviato da ciro78
    Salve,
    vorrei in una tabella di un database mysql che il campo data assumesse come valore predefinito la data odierna. Qual'è la funzione sql che la restituisce?
    Ho provato con date ma mi scrive un desolante "0000-00-00"

    ciao e grazie
    curdate() oppure now(). now() rende anche ore:min:sec.

    insert into tabella (campo_data) values (curdate() );

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

  4. #4
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    allora il fatto è questo
    la tabella è già creata.
    io ho aggiunto questo campo data e vorrei da phpmyadmin impostare che il valore predefinito deve essere la data odierna.
    in pratica non vorrei farlo da codice ogni volta poichè, sto modificando un sito non fatto da me, quidni perdereio ulteriore tempo a ricercare tutte le pagine in cui viene richiamata la tabella
    ciao e grazie
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  5. #5
    Originariamente inviato da ciro78
    allora il fatto è questo
    la tabella è già creata.
    io ho aggiunto questo campo data e vorrei da phpmyadmin impostare che il valore predefinito deve essere la data odierna.
    in pratica non vorrei farlo da codice ogni volta poichè, sto modificando un sito non fatto da me, quidni perdereio ulteriore tempo a ricercare tutte le pagine in cui viene richiamata la tabella
    ciao e grazie
    basta metterlo una volta sola nell'insert oppure in un update. se poi lo devi selezionare dovrai scriverlo ovunque serve.

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

  6. #6
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    appunto, siccome non so quante volte la tabella è collegata, volevo evitare di inserirlo sempre....
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  7. #7
    Originariamente inviato da ciro78
    appunto, siccome non so quante volte la tabella è collegata, volevo evitare di inserirlo sempre....
    cosa vuoi dire con inserirlo sempre e tabella collegata?

    Un dato lo metti una volta e li' ci rimane. Se vuoi fare un aggiornamento di data-ora quando vengono fatte modifiche usa il TIMESTAMP mysql.

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

  8. #8
    Utente di HTML.it L'avatar di Leo15
    Registrato dal
    Sep 2005
    Messaggi
    307
    Se non sbaglio mysql non accetta come valori di default delle funzioni, quindi anche volendo non potresti usare CURDATE() come valore di default.
    Con TIMESTAMP invece c'è la possibilità di inserire il timestamp corrente (credo che phpMyAdmin stesso faccia comparire l'opzione in fase di creazione del campo).
    In questo modo qualsiasi INSERT priva di un valore specifico per il campo "campo_data" produrrà un record con il timestamp corrente.
    La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
    Isaac Asimov

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.