下面的过程,不知道是不是你想要的?
mysql> create table cc(id int not null auto_increment primary key,
    -> name varchar(20) not null,date timestamp default now());
Query OK, 0 rows affected (0.08 sec)mysql> desc cc;
+-------+-------------+------+-----+-------------------+----------------+
| Field | Type        | Null | Key | Default           | Extra          |
+-------+-------------+------+-----+-------------------+----------------+
| id    | int(11)     | NO   | PRI | NULL              | auto_increment |
| name  | varchar(20) | NO   |     |                   |                |
| date  | timestamp   | YES  |     | CURRENT_TIMESTAMP |                |
+-------+-------------+------+-----+-------------------+----------------+
3 rows in set (0.03 sec)mysql> insert into cc(id,name) values(1,'tom');
Query OK, 1 row affected (0.00 sec)mysql> select * from cc;
+----+------+---------------------+
| id | name | date                |
+----+------+---------------------+
|  1 | tom  | 2006-09-28 14:00:25 |
+----+------+---------------------+
1 row in set (0.00 sec)mysql> update cc set name='jim';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> select * from cc;
+----+------+---------------------+
| id | name | date                |
+----+------+---------------------+
|  1 | jim  | 2006-09-28 14:00:25 |
+----+------+---------------------+
1 row in set (0.00 sec)

解决方案 »

  1.   

    呵呵,又是版本问题
    hy2003fly()的方法在低版本上不对,default now()语法错误
    如果想以后不被修改,可以在update的时候指定这一列继续使用当前值
    以下是我模拟hy2003fly()的方法的结果
    mysql> create table cc(id int not null auto_increment primary key,
        -> name varchar(20) not null,date timestamp);                 
    Query OK, 0 rows affected (0.11 sec)mysql> desc cc
        -> ;
    +-------+---------------+------+-----+---------+----------------+
    | Field | Type          | Null | Key | Default | Extra          |
    +-------+---------------+------+-----+---------+----------------+
    | id    | int(11)       |      | PRI | NULL    | auto_increment |
    | name  | varchar(20)   |      |     |         |                |
    | date  | timestamp(14) | YES  |     | NULL    |                |
    +-------+---------------+------+-----+---------+----------------+
    3 rows in set (0.00 sec)mysql> insert into cc(id,name) values(1,'tom');
    Query OK, 1 row affected (0.04 sec)mysql> select * from cc;
    +----+------+----------------+
    | id | name | date           |
    +----+------+----------------+
    |  1 | tom  | 20060929094134 |
    +----+------+----------------+
    1 row in set (0.00 sec)mysql> update cc set name='jim',date=date;
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 0mysql> select * from cc;                  
    +----+------+----------------+
    | id | name | date           |
    +----+------+----------------+
    |  1 | jim  | 20060929094134 |
    +----+------+----------------+
    1 row in set (0.01 sec)