Maison >base de données >tutoriel mysql >Les tables MySQL 4.0 peuvent-elles avoir plusieurs colonnes TIMESTAMP avec des mises à jour automatiques ?
Contexte :
Lors de la création de tables MySQL 4.0, les utilisateurs rencontrent souvent un erreur lors de la tentative de définition d'une colonne d'horodatage Created et LastUpdated avec les valeurs par défaut de CURRENT_TIMESTAMP. En effet, les paramètres par défaut des colonnes d'horodatage dans MySQL 4.0 limitent la présence d'une seule de ces colonnes.
Question :
Les utilisateurs peuvent-ils avoir à la fois un horodatage créé et un horodatage LastUpdated colonne dans MySQL 4.0, ou le champ LastUpdated doit-il être mis à jour manuellement à chaque transaction ?
Réponse :
Premières versions :
Avant MySQL 5.5, la restriction était en place. Une seule colonne TIMESTAMP peut être définie avec la clause DEFAULT CURRENT_TIMESTAMP ou ON UPDATE CURRENT_TIMESTAMP. Par conséquent, les utilisateurs devaient mettre à jour manuellement le champ LastUpdated à chaque transaction.
MySQL 5.5 :
La documentation de MySQL 5.5 précisait qu'il n'était toujours pas possible d'en avoir un. colonne d'horodatage comme valeur par défaut et une autre comme valeur de mise à jour automatique.
MySQL 5.6.5 et au-delà :
Cependant, des changements importants ont été introduits dans MySQL 5.6.5. La restriction concernant la présence de plusieurs colonnes TIMESTAMP avec initialisation ou mise à jour automatique a été levée. Ainsi, dans les versions MySQL 5.6.5 et supérieures, les utilisateurs peuvent définir à la fois une colonne d'horodatage Created et LastUpdated avec les valeurs par défaut souhaitées. Cela supprime le besoin de mises à jour manuelles pendant les transactions.
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!