Modérateur PHPfrance |
10684 Messages
14 juil. 2006, 22:52
Ce n'est absolument pas un problème de conception et si l'utilisation d'une table externe pour stocker des dates peut s'avérer interessante lorsque l'on doit travailler spécifiquement sur celles-ci (genre retrouver tous les lundi ou autre) elle n'est vallable que dans certains cas particulier et certainement pas à généraliser à tout bout de champs
Ton format 0000-00-00 provient de la valeur par défaut que donne mysql à un champ date. En effet comme tu as déclaré tes champs date comme étant NOT NULL, cela signifie qu'il doit forcément y avoir une valeur. Et au lieu de te jeter comme toute bonne base de données devrait le faire lorsque oublie de spécifier une valeur pour un champ non null, mysql y colle sa valeur par défaut et continue comme si de rien n'était.
Pour l'éviter, il te faut modifier la structure de ta table en ne laissant à NOT NULL que les champs obligatoires, et utiliser la valeur "null" dans requête à la place de ta date vide
