Maison >base de données >tutoriel mysql >Les tables MySQL peuvent-elles désormais avoir plusieurs colonnes CURRENT_TIMESTAMP ?

Les tables MySQL peuvent-elles désormais avoir plusieurs colonnes CURRENT_TIMESTAMP ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-02 18:23:12446parcourir

Can MySQL Tables Now Have Multiple CURRENT_TIMESTAMP Columns?

Plusieurs colonnes TIMESTAMP avec CURRENT_TIMESTAMP : une restriction historique

Dans les versions précédentes de MySQL, une limitation limitait les tables à n'avoir automatiquement qu'une seule colonne TIMESTAMP initialisé ou mis à jour à la date et à l'heure actuelles à l'aide de la clause CURRENT_TIMESTAMP. Cette contrainte s'étendait aux clauses DEFAULT et ON UPDATE.

Restriction assouplie dans MySQL 5.6.5

La version MySQL 5.6.5 a apporté un changement important, levant la restriction historique . Avec cette version, n'importe quelle colonne TIMESTAMP peut avoir n'importe quelle combinaison de clauses DEFAULT CURRENT_TIMESTAMP et ON UPDATE CURRENT_TIMESTAMP.

Exemple :

La définition de table suivante, qui a précédemment généré une erreur , est désormais valide à partir de MySQL 5.6.5 :

CREATE TABLE `foo` (
  `ProductID` INT(10) UNSIGNED NOT NULL,
  `AddedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `UpdatedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=INNODB;

Remarque : Cette modification s'applique également aux définitions de colonnes DATETIME, qui prennent désormais en charge les mêmes clauses et combinaisons.

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