zoukankan      html  css  js  c++  java
  • 迁移数据时 timestamp类型字段报错: 1067

    MySQL数据库升级 8.0.13,原版本5.5;执行导出来的SQL文件时报错

    1067 - Invalid default value for 'login_time'

    原因:MySQL 5.6以后timestamp设定默认值规则改变,不能为”0000 00-00 00:00:00”

    而我的字段是:`login_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP COMMENT '登陆时间',

    问题解决:

    查看sql_mode:

    show session variables like '%sql_mode%';

    结果:STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

    修改sql_mode,去掉NO_ZERO_IN_DATE,NO_ZERO_DATE:

    set sql_mode = "STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION";

    重新执行SQL文件即可;

    永久修改sql_model,需要修改my.ini文件;

  • 相关阅读:
    【HDOJ】1811 Rank of Tetris
    【HDOJ】1518 Square
    日期类 Date
    RunTime
    System 系统类
    StringBuffer
    获取联系人列表的时候contact_id出现null的值
    String类
    object类
    eclipse使用的步骤
  • 原文地址:https://www.cnblogs.com/minutes/p/11288190.html
Copyright © 2011-2022 走看看