【发布时间】:2015-08-16 16:22:11
【问题描述】:
我在 MySQL 5.5 中填充模式时遇到问题。每个表都有一个“create_time”和“update_time”,它们是时间戳。我更喜欢这些列没有默认值,但即使没有默认值,我也会收到 1067 错误引用默认值。
#1067 - Invalid default value for 'update_time'
下面是我的脚本的一部分,它是由 MySQL Workbench 生成的。
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
CREATE SCHEMA IF NOT EXISTS `database` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ;
USE `database` ;
CREATE TABLE IF NOT EXISTS `database`.`table` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`create_time` TIMESTAMP NOT NULL,
`update_time` TIMESTAMP NOT NULL,
PRIMARY KEY (`id`),
UNIQUE INDEX `id_UNIQUE` (`id` ASC))
ENGINE = InnoDB;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
如何使用这些时间戳创建此表?
【问题讨论】:
标签: mysql sql mysql-workbench