msq 设置默认值有关问题

msq 设置默认值有关问题

msq 设置默认值问题

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 ‘论坛用户表’; 

红色部分是错误的 那么能不能把时间字段的默认值设置为当前系统时间呢? 

该如何写?



没有

使用now()在sql中控制。




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




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




DEFAULT子句用于为列指定一个默认值。默认值必须为一个常数,不能为一个函数或一个表达式,有一种情况例外。

例如,一个日期列的默认值不能被设置为一个函数,如NOW()或CURRENT_DATE。

不过,有一种例外,您可以对TIMESTAMP列指定CURRENT_TIMESTAMP为默认值。

请参见11.3.1.1节,“MySQL 4.1中的TIMESTAMP属性”。

四楼

==== 思想重于技巧 ====

msq 设置默认值有关问题

相关文章:

你感兴趣的文章:

标签云: