mysql设置timpstamp的默认值为 '0000-00-00 00:00:00' 时报错

问题:mysql设置timpstamp的默认值为 ‘0000-00-00 00:00:00‘ 时报错:

ERROR 1067 (42000): Invalid default value for ‘updateaDate‘

原因和解决方法:

# sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE
,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 默认是
这个配置,这个配置不允许日期字段的默认值为‘0000-00-00 00:00:00‘,所以改成了下面的配置:

sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_
AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

记得修改完后,重启mysql服务:  /etc/init.d/mysqld restart     或者  service mysqld restart。 两个命令的效果一样。

注:一般在my.ini或my.cnf下配置该sql-mode,

linux下的为my.cnf,其路径一般为 /etc/my.cnf  或 /etc/mysql/my.cnf 或 /usr/my.cnf

win下的是my.ini,一般会在安装目录的根目录.

mysql设置timpstamp的默认值为 '0000-00-00 00:00:00' 时报错

原文地址:https://www.cnblogs.com/mediocreWorld/p/11294412.html

时间: 2024-11-01 19:30:45

mysql设置timpstamp的默认值为 '0000-00-00 00:00:00' 时报错的相关文章

动态设置radio的默认值

根据后台传值动态设置radion的默认值,一般设置默认值的标签为:checked="checked".具体动态设置默认值得代码如下: <tr> <td width="150" height="30" align="right">性  别:</td> <td width="250" align="left"> <input type=&

js动态设置select的默认值

根据需求动态的设置select的默认值,若要选定默认则代码selected="selected".动态设置则如下所示: <html> <table> <tr> <td width="250" align="left"> <select name="job" size="1" > <option value="普通会员"&g

MySQL设置自增初始值和步长

MySQL设置自增初始值和步长 我们可以通过:SHOW VARIABLES LIKE 'auto_inc%'; 查看当前数据库的自增长设置. auto_increment_increment这是自增长的步长. auto_increment_offset这是自增长开始的值.‘ 现在想要更改test表的id增长开始值和增长的步长,可以使用如下方法: SET @@auto_increment_increment=3; -- 将自增长步长设置为3 SET @@auto_increment_offset=

js设置函数参数默认值的3种方法

js默认是不支持funtion f($a=a){}这种写法的,如果想设置函数参数的默认值,可以参考如下三种方法: 第一种方法: 使用arguments,函数所有的参数都会存入arguments数组离去,所以我们可以从中获取相应的参数然后赋值 function example(a,b){ var a = arguments[0] ? arguments[0] : 1;//设置参数a的默认值为1 var b = arguments[1] ? arguments[1] : 2;//设置参数b的默认值为

JavaScript基础 window.prompt() 弹出一个输入框 设置提示信息与默认值

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

MySQL 设置表的属性值自动增加

属性值自动增加,比如 id 这一列,每新增一条记录,id 字段值自动加 1. 注意:设置自动增加的字段必须为主键的一部分 语法:字段名  数据类型  AUTO_INCREMENT

mysql设置数据库的默认编码

在安装mysql的时候如果没有选择编码方式的话,那么系统将默认选择latin1编码,在mysql的控制台的窗口中输入show variables like 'char%'可以查看到数据库系统的默认的编码集,如下: 我们可以看出系统的默认的编码是Latin1编码方式,Latin1是ISO-8859-1的别名,有些环境下写作Latin-1.ISO-8859-1编码是单字节编码,向下兼容ASCII.不支持中文编码,如果你在创建数据库或建表时没有明确指定编码的方式,那么数据库将采用默认的编码方式,而后你

修改mysql数据库字段内容默认值为当前时间

https://www.cnblogs.com/testway/p/5531969.html --添加CreateTime 设置默认时间 CURRENT_TIMESTAMP ALTER TABLE table_name ADD COLUMN CreateTime datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ; --修改CreateTime 设置默认时间 CURRENT_TIMESTAMP ALTER TABLE table_nam

MySQL设置时区和默认编码

情况描述 学习spring boot时要在Windows本地安装MySQL5.7,配置好之后项目,启动之后提示需要设置时区,并且在使用过程中发现出现乱码,中文无法显示,出现上述问题的主要是MySQL5.7中没有设置时区和编码. 解决方案 1.在spring boot的配置文件application.properties中设置MySQL的数据源url spring.datasource.url=jdbc:mysql://localhost:3306/yunzhi_spring_boot?chara