Maison  >  Article  >  base de données  >  Pourquoi est-ce que j'obtiens l'erreur « Valeur par défaut non valide pour le champ d'horodatage « créer_date » » dans MySQL ?

Pourquoi est-ce que j'obtiens l'erreur « Valeur par défaut non valide pour le champ d'horodatage « créer_date » » dans MySQL ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-26 22:19:02854parcourir

Why Am I Getting

Valeur par défaut non valide pour le champ d'horodatage 'create_date'

Lors de la création d'une table avec une colonne d'horodatage et de la spécification d'une valeur par défaut de '0000- 00-00 00:00:00', une erreur peut se produire indiquant « Valeur par défaut non valide pour 'create_date' ». Cette erreur est causée par le mode SQL de MySQL - NO_ZERO_DATE.

Selon le manuel de référence MySQL, NO_ZERO_DATE empêche l'insertion de '0000-00-00' comme date valide en mode strict. Dans ce cas, la colonne « create_date » a été définie comme horodatage et a reçu une valeur par défaut de « 0000-00-00 00:00:00 ». Cependant, le mode SQL - NO_ZERO_DATE interdit de telles valeurs.

Pour résoudre cette erreur, envisagez les options suivantes :

  • Désactivez le mode SQL - NO_ZERO_DATE à l'aide de la commande SET sql_mode="" avant de créer la table.
  • Utilisez une valeur par défaut différente pour la colonne 'create_date' qui n'est pas '0000-00-00 00:00:00', telle que 'CURRENT_TIMESTAMP'.
  • Insérez zéro dates en utilisant l'option IGNORE, qui permet l'insertion de telles valeurs avec un avertissement au lieu d'une erreur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn