2 CURRENT_TIMESTAMP dans une table

Messages postés
196
Date d'inscription
dimanche 23 janvier 2005
Statut
Membre
Dernière intervention
10 août 2009
- - Dernière réponse : malik7934
Messages postés
1162
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
- 2 janv. 2008 à 21:11
Bonjour et Happy New Year à tous les programmeurs.

J'ai un petit problème sur l'une de mes tables ci-dessous:

CREATE TABLE `setting_group` (
`id_group` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR(50) NOT NULL DEFAULT '',
`create_date` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
`modified_date` TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)

Et MySQL me renvoit le message:
#1293 - Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause

J'ai bien compris le message, je ne peux utiliser 
qu'une seule fois 
CURRENT_TIMESTAMP sur une table.


Est-ce que quelqu'un à une astuce pour contourner ce problème ?
Car j'aimerais pouvoir indiquer la date de création ainsi que la date de modification du groupe sur une seule table.

Merci d'avance
Afficher la suite 

3 réponses

Messages postés
1162
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
2
0
Merci
http://mysql.ifrance.com/showthread.php?t=4774 : "The only way to have more than one TIMESTAMP column, when one is
declared with either DEFAULT CURRENT_TIMESTAMP or ON UPDATE
CURRENT_TIMESTAMP or both, is to force the other timestamp column
default to a valid timestamp value, such as 20070101000000."

Je te proposes de faire ainsi:
CREATETABLE`setting_group`(
`id_group`SMALLINTUNSIGNEDNOTNULLAUTO_INCREMENTPRIMARYKEY,
`name`VARCHAR(50)NOTNULLDEFAULT'',
`create_date`TIMESTAMPDEFAULT'0000-00-00 00:00:00',
`modified_date`TIMESTAMPONUPDATECURRENT_TIMESTAMP
)

et dans ton code PHP, lorsque tu fais l'insert dans cette table, tu mets NOW() pour create_date

*****
noisy communication - wherever, be everywhere!
Commenter la réponse de malik7934
Messages postés
196
Date d'inscription
dimanche 23 janvier 2005
Statut
Membre
Dernière intervention
10 août 2009
0
Merci
Oué j'y avais déja pensé, mais j'aimerais que cela se fasse automatiquement par la base de donées.
Commenter la réponse de dvdstory
Messages postés
1162
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
2
0
Merci
ben tu peux pas. mysql ne l'autorise pas

*****
noisy communication - wherever, be everywhere!
Commenter la réponse de malik7934