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をデフォルトとして指定することもできます。