86 votes

Mise à jour de l’entrée SANS mise à jour de l’horodatage

J’ai un horodatage dans une table mysql avec l’attribut « ON UPDATE CURRENT_TIMESTAMP ». Existe-t-il un moyen de désactiver manuellement la mise à jour de l’horodatage lors d’une occasion spéciale ? (par exemple: mettre à jour l’entrée pour réviser un article de blog, mais pas pour le dater à nouveau)

158voto

Andy Points 8860

Vous pouvez définir manuellement la valeur de la colonne sur sa valeur actuelle dans la commande update :

Si vous ne définissez pas la valeur dans la requête, elle sera mise à jour vers l’horodatage actuel conformément à la définition de la table.

26voto

Olie Points 10528

Pour effectuer la mise à jour automatique de votre table/horodatage :

Pour qu’il ne soit pas mis à jour automatiquement :

REMARQUE : La partie « current_timestamp par défaut » la définit simplement sur le tampon actuel au moment de la valeur par défaut, car le champ n’est pas nul. Vous pouvez supprimer à la fois le not null et le default, si vous le souhaitez.

11voto

knittl Points 64110

n’utilisez pas d’horodatage, mais suivez les temps manuellement.

Si vous souhaitez vraiment mettre à jour un enregistrement et ne pas mettre à jour son horodatage :

0voto

Pini Cheyni Points 63

Si vous modifiez timestemp lors de la mise à jour, vous devez prendre en considération que si la valeur a été mise à jour mais pas modifiée (mise à jour de la valeur de sauvegarde), elle ne mettra pas à jour le « on update Current_timestemp » et dans ce cas, vous devez définir le timestemp manuellement

L’idée est venue d’ici : Appuyez sur l’enregistrement MYSQL pour mettre à jour le champ TIMESTAMP

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