首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DATETIME字段的默认值

问DATETIME字段的默认值
EN

Stack Overflow用户
提问于 2015-05-07 19:26:28
回答 2查看 3.3K关注 0票数 2

我有一个.mwb文件,我想转发工程师。它包含查询creating new table,该查询依次创建一个DATETIME类型的列。

这个查询抛出错误的部分是:

代码语言:javascript
复制
'last_send_at` DATETIME NULL DEFAULT '0000-00-00 00:00:00',

错误是:

代码语言:javascript
复制
Executing SQL script in server
ERROR: Error 1067: Invalid default value for 'last_send_at'

怎么了?

EN

回答 2

Stack Overflow用户

发布于 2015-05-07 19:33:34

DATETIME字段必须保留null默认值,或者根本不保留默认值。

对于除TIMESTAMP之外的date和time类型,缺省值为该类型的相应“零”值。对于表中的第一个时间戳列,默认值为当前日期和时间。

Check it here

票数 1
EN

Stack Overflow用户

发布于 2015-05-07 19:40:49

看起来您使用的是非常旧的mysql版本,其中datetime不允许使用默认值。

http://dev.mysql.com/doc/refman/5.6/en/timestamp-initialization.html

以下是MySQL5.5和5.6的缺点,在这两个版本中都有效

http://sqlfiddle.com/#!9/1b6fa

http://sqlfiddle.com/#!2/1b6fab

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30099737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档