打印

Mysql中日期/时间字段的问题?

为什么我的Mysql数据库中加入了一个日期/时间字段,默认值为now(),可是在添加记录的时候,这个字段里不自动添加当时的时间?
Stop preparing right away !
把字段类型改成 datetime,时间出来了,可是显示的却是0002年11月30日?

直接查看mysql数据库里面的字段,时间却变成了1899-12-30  

这个是我建表的sql 语句

CREATE TABLE `tnews` (
  `fnewsid` int(11) NOT NULL auto_increment,
  `fsubjectid` smallint(11) NOT NULL default '0',
  `ftitle` varchar(200) default NULL,
  `ficon` varchar(20) default NULL,
  `fauthor` varchar(30) default NULL,
  `fpassed` int(1) default '0',
  `fkeywords` varchar(200) default NULL,
  `fsummary` varchar(100) default NULL,
  `fdate` datetime NOT NULL default '0000-00-00 00:00:00',
  `fcontent` longtext,
  `fdown1` varchar(100) default NULL,
  `fdown2` varchar(100) default NULL,
  `fdown3` varchar(100) default NULL,
  PRIMARY KEY  (`fnewsid`)
) TYPE=MyISAM
Stop preparing right away !
mysql> desc tnews
    -> ;
+------------+--------------+------+-----+---------------------+---------------+
| Field      | Type         | Null | Key | Default             | Extra         |
+------------+--------------+------+-----+---------------------+---------------+
| fnewsid    | int(11)      |      | PRI | NULL                | auto_increment|
| fsubjectid | smallint(11) |      |     | 0                   |               |
| ftitle     | varchar(200) | YES  |     | NULL                |               |
| ficon      | varchar(20)  | YES  |     | NULL                |               |
| fauthor    | varchar(30)  | YES  |     | NULL                |               |
| fpassed    | int(1)       | YES  |     | 0                   |               |
| fkeywords  | varchar(200) | YES  |     | NULL                |               |
| fsummary   | varchar(100) | YES  |     | NULL                |               |
| fdate      | datetime     |      |     | 0000-00-00 00:00:00 |               |
| fcontent   | longtext     | YES  |     | NULL                |               |
| fdown1     | varchar(100) | YES  |     | NULL                |               |
| fdown2     | varchar(100) | YES  |     | NULL                |               |
| fdown3     | varchar(100) | YES  |     | NULL                |               |
+------------+--------------+------+-----+---------------------+---------------+
13 rows in set (0.00 sec)

mysql> insert tnews (fdate) values(now());
Query OK, 1 row affected (0.01 sec)

mysql> select fdate from tnews;
+---------------------+
| fdate               |
+---------------------+
| 0000-00-00 00:00:00 |
| 2002-06-18 16:44:04 |
+---------------------+
2 rows in set (0.00 sec)


Nothing special.