2009-06-10 3 views
1

Вот отрывок из моего PHP, который создает таблицу:Как этот SQL ведет к ON UPDATE CURRENT_TIMESTAMP?

$sql = 'CREATE TABLE '.$table.' (
       `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , 
       `name` VARCHAR(55) NOT NULL , 
       `venue` VARCHAR(55) NOT NULL , 
       `time` TIMESTAMP NOT NULL , 
       `desc` TEXT NOT NULL 
       )'; 

Это делает time столбца становится текущей меткой времени, когда я добавить или изменить строку. Как я могу это предотвратить?

ответ

8

Это поведение по умолчанию для типа столбца TIMESTAMP. Я бы рекомендовал изменить его на столбец DATETIME.

Вы также можете изменить поведение, явно указав, как вы хотите, чтобы он себя вел.

added TIMESTAMP DEFAULT CURRENT_TIMESTAMP 

Указанная выше спецификация столбцов не будет иметь поведения ON UPDATE. Вы также можете указать значение NULL или 0 по умолчанию.

Смежные вопросы