En utilisant MySQL, j'essaie de créer une colonne d'horodatage à partir d'une colonne de date et d'une colonne d'heure. Si la colonne de date ou d'heure contient une valeur NULL, MySQL définit automatiquement la valeur correspondante dans la colonne TIMESTAMP
sur CURRENT_TIMESTAMP
.
Existe-t-il un moyen de le définir par défaut sur un NULL
, au lieu du CURRENT_TIMESTAMP
?
Quelque chose comme:
ALTER TABLE customers ADD s_timestamp TIMESTAMP;
UPDATE customers
SET s_timestamp = timestamp(s_date,s_time) DEFAULT NULL;
Utilisez cette requête pour ajouter votre colonne
ALTER TABLE `customers`
ADD COLUMN `s_timestamp` TIMESTAMP NULL DEFAULT NULL;
Et, si vous souhaitez obtenir l'horodatage actuel sur la mise à jour uniquement:
ALTER TABLE `customers`
ADD COLUMN `s_timestamp` TIMESTAMP NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP;