2 votes

Erreur de longueur/valeur des DATETIME et TIMESTAMP

J'utilisais le type int pour stocker la date et l'heure. Pour faciliter la récupération des données dans une plage spécifique à partir de MySQL, j'ai essayé de le changer en TIMESTAMP/DATETIME mais il donne l'erreur comme dans l'image ci-jointe dans les deux cas. Le format du type de données TIMESTAMP/DATETIME es YYYY-MM-DD HH:MM:SS qui compte 19 caractères.

Je n'ai pas pu trouver de tutoriel/article approprié pour commencer depuis le début.

Image d'erreur

7voto

Jocelyn Points 5621

Lorsque vous définissez un champ DATETIME ou TIMESTAMP, il n'est pas nécessaire de préciser la longueur.

C'est à cela que se réfère le message d'erreur :

Une valeur DATETIME ou TIMESTAMP peut inclure une partie fractionnelle de seconde à la fin, avec une précision allant jusqu'à la microseconde (6 chiffres).

MySQL autorise les secondes fractionnaires pour les valeurs TIME, DATETIME et TIMESTAMP, avec une précision allant jusqu'à la microseconde (6 chiffres). Pour définir une colonne qui inclut une partie de secondes fractionnelles, utilisez la syntaxe nom_type(fsp), où nom_type est HEURE, DATETIME ou TIMESTAMP, et fsp est la précision des secondes fractionnelles. Par exemple :

CREATE TABLE t1 (t TIME(3), dt DATETIME(6));

Résumé de Syntaxe de CREATE TABLE :

| TIME[(fsp)]
| TIMESTAMP[(fsp)]
| DATETIME[(fsp)]

Documentation :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X