IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 MySQL Discussion :

Date courante comme valeur par défaut


Sujet :

MySQL

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 7
    Points : 6
    Points
    6
    Par défaut [Resolu] Date courante comme valeur par défaut
    Bonjour,
    Je souhaiterai appliquer à une table (date_ajout) de type DATE la date courante comme valeur par défaut. Ainsi, à chaque enregistrement, sa date de création est sauvegardée automatiquement.
    Je peux tout aussi bien passer par une requète dans mon code PHP. Ce n'est pas tellement la méthode utilisée mais le résultat qui m'importe.
    Actuellement et malgrès mes essais, la date enregistrée est toujours 0000-00-00

    Si vous avez une solution, je suis preneur.
    Merci d'avance.
    ++

  2. #2
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Bonjour,

    The DEFAULT clause specifies a default value for a column. With one exception, the default value must be a constant; it cannot be a function or an expression. This means, for example, that you cannot set the default for a date column to be the value of a function such as NOW() or CURRENT_DATE. The exception is that you can specify CURRENT_TIMESTAMP as the default for a TIMESTAMP column.
    Donc ce n'est pas possible, il faut spécifier la date lors de chaque insertion...

    http://dev.mysql.com/doc/refman/5.0/...ate-table.html

  3. #3
    Futur Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Je suis un débutant et par conséquent, je ne sais trop comment écrire mon code...

    J'ai essayé cette requète :

    $sql = "INSERT INTO tm (date_ajout)
    VALUES ( 'now()') " ;

    Mais le résultat est le même

  4. #4
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Tu as délimité la valeur par des simples quotes (') donc MySQL prend ça pour une chaine de caractères. Du coup ne sachant quoi insérer, il met la valeur par défaut à savoir 0000-00-00.

    Il faut simplement faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    INSERT  INTO tm (date_ajout)
                VALUES ( CURDATE())

  5. #5
    Futur Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Effectivement...

    Merci beaucoup et bonne fin d'après midi
    ++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Utilisateur courant comme valeur par défaut dans une liste déroulante
    Par LearningAccess dans le forum IHM
    Réponses: 10
    Dernier message: 29/10/2012, 14h33
  2. Réponses: 3
    Dernier message: 22/04/2007, 08h39
  3. Réponses: 2
    Dernier message: 27/09/2006, 18h07
  4. Réponses: 7
    Dernier message: 24/05/2006, 11h52
  5. Réponses: 1
    Dernier message: 20/04/2006, 12h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo