mysql中datetime类型设置默认值方法
通过navicat客户端修改datetime默认值时,遇到了问题。
数据库表字段类型datetime,原来默认为NULL,当通过界面将默认值设置为当前时间时,提示“1067-Invaliddefaultvaluefor'CREATE_TM'”,而建表的时候,则不会出现这个问题,比如建表语句:
CREATETABLE`app_info1`( `id`bigint(21)unsignedNOTNULLAUTO_INCREMENTCOMMENT'主键ID', `app_id`varchar(30)DEFAULTNULLCOMMENT'应用编码', `app_name`varchar(30)DEFAULTNULLCOMMENT'应用名称', `package_name`varchar(100)DEFAULTNULLCOMMENT'包名', `version`int(11)DEFAULTNULLCOMMENT'版本号', `version_name`varchar(20)DEFAULTNULLCOMMENT'版本名', `icon_url`varchar(512)DEFAULTNULLCOMMENT'Icon地址', `download_url`varchar(512)DEFAULTNULLCOMMENT'下载地址', `summary`varchar(512)DEFAULTNULLCOMMENT'摘要', `desc`varchar(512)DEFAULTNULLCOMMENT'描述信息', `app_status`int(4)DEFAULT'0'COMMENT'状态0:可用,1:删除', `create_time`datetimeDEFAULTCURRENT_TIMESTAMPCOMMENT'创建时间', `create_user`varchar(30)DEFAULTNULLCOMMENT'创建人', `modify_time`datetimeDEFAULTCURRENT_TIMESTAMPCOMMENT'修改时间', `modify_user`varchar(30)DEFAULTNULLCOMMENT'修改人', PRIMARYKEY(`id`) )ENGINE=InnoDBAUTO_INCREMENT=2DEFAULTCHARSET=utf8;
然后我试了一下直接对字段通过脚本进行修改,也是OK的,如下:
altertablets_role MODIFYcolumncreate_tmdatetimedefaultCURRENT_TIMESTAMPCOMMENT'创建时间'
当然,我安装的Mysql是5.6以上的,其他版本的没有尝试过。
以上这篇mysql中datetime类型设置默认值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。