mysql 中 建表的时候 NOT NULL字段能设置默认值吗? 
如 
CREATE TABLE usertext ( 
-- 必填信息 
id INT NOT NULL AUTO_INCREMENT , -- 用户ID 
register_time DATETIME NOT NULL default now() , -- 注册时间 
PRIMARY KEY (id) , 
KEY `idx_username` (`username`) 

TYPE=InnoDB DEFAULT CHARSET=utf8 COMMENT '论坛用户表'; 
红色部分是错误的 那么能不能把时间字段的默认值设置为当前系统时间呢? 
该如何写? 

解决方案 »

  1.   

    没有使用now()在sql中控制。
      

  2.   

    到现在为致还没有在mysql 中接触过mysql 的now 方法,我知道可以获得DB server 时间的,可没有用过now 方法
      

  3.   

    register_time timestamp NOT NULL default current_timestamp , -- 注册时间  
      

  4.   

    DEFAULT子句用于为列指定一个默认值。默认值必须为一个常数,不能为一个函数或一个表达式,有一种情况例外。
    例如,一个日期列的默认值不能被设置为一个函数,如NOW()或CURRENT_DATE。
    不过,有一种例外,您可以对TIMESTAMP列指定CURRENT_TIMESTAMP为默认值。请参见11.3.1.1节,“MySQL 4.1中的TIMESTAMP属性”。
      

  5.   

    四楼
        [align=center]====  ====
    [/align]