我想从framadate软件执行以下mysql语句。
CREATE TABLE IF NOT EXISTS `sondage` (
`id_sondage` char(16) NOT NULL,
`commentaires` text,
`mail_admin` varchar(128) DEFAULT NULL,
`nom_admin` varchar(64) DEFAULT NULL,
`titre` text,
`id_sondage_admin` char(24) DEFAULT NULL,
`date_creation` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`date_fin` timestamp NOT NULL,
`format` varchar(2) DEFAULT NULL,
`mailsonde` tinyint(1) DEFAULT '0',
`statut` int(11) NOT NULL DEFAULT '1' COMMENT '1 = actif ; 0 = inactif ; ',
UNIQUE KEY `id_sondage` (`id_sondage`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
但我收到错误:Error in query (1067): Invalid default value for 'date_fin'
我想知道这意味着什么,因为date_fin没有给出默认值。
答案 0 :(得分:1)
听起来我的MySQL服务器坚持要求您为date_fin
列提供默认值。试试这个。
...
`date_fin` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
...
通常,为NOT NULL
列提供默认值是一种相当不错的做法。