数据库遇到的问题之“datetime设置默认为CURRENT_TIMESTAMP时报无效默认问题”和“时区问题”
一、问题1
问题描述:
今日加入创建时间和修改时间,并设置为默认CURRENT_TIMESTAMP时,出现错误,指向sql中的datetime字段,查了一下,发现是版本问题
立马查询自己的MySQL版本,发现是5.5.40的,
datetime设置默认为CURRENT_TIMESTAMP时,需要在5.6版本以上才可以
解决方案=
还是老实用:timestamp类型,去设置默认值为当前时间:CURRENT_TIMESTAMP吧
二、问题2
以为应该新建成功了 又来了一个报错,也是版本问题,这个限制在后续版本中取消了
主要问题:在MySQL 5.6.5版本之前,是只能有一列能够在初始化的时候或者被更新的时候自动设置为CURRENT_TIMESTAMP的值
问题描述:
在利用MySQL语句建立表结构时出现了Error Code : 1293
Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause错误
其建表语句为:
CREATE TABLE user
(
id BIGINT(20) NOT NULL COMMENT '主键ID',
name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
age INT(11) NULL DEFAULT NULL COMMENT '年龄',
email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
gmt_create timestamp DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
gmt_update timestamp DEFAULT CURRENT_TIMESTAMP COMMENT '邮箱',
PRIMARY KEY (id)
);
错误原因:在创建表结构时有且只有一个可以在“创建时间”或者“修改时间”上时带上CURRENT_TIMESTAMP
解决办法:
只让一个TIMESTAMP列在设置默认值或更新时带上CURRENT_TIMESTAMP
我这里选择了“创建时间”默认,修改时间就没有默认了,
CREATE TABLE user
(
id BIGINT(20) NOT NULL COMMENT '主键ID',
name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
age INT(11) NULL DEFAULT NULL COMMENT '年龄',
email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
create_time timestamp DEFAULT CURRENT_TIMESTAMP COMMENT '邮箱',
update_time timestamp COMMENT '邮箱',
PRIMARY KEY (id)
);
三、问题3
是关于数据库中时间时区的时差的问题
问题描述
默认值为CURRENT_TIMESTAMP 与实际时间相差8小时
解决方案
-- 设置全局
set @@global.time_zone = '+08:00';
-- 立即刷新数据库
flush privileges;
数据库遇到的问题之“datetime设置默认为CURRENT_TIMESTAMP时报无效默认问题”和“时区问题”的更多相关文章
- mysql datetime设置now()无效,直接用程序设置默认值比较好
mysql datetime设置now()无效的,没有此用法,datetime类型不能设置函数式默认值,只能通过触发器等来搞.想设置默认值,只能使用timestamp类型,然后默认值设置为:CURRE ...
- mysql数据库的安装以及常见优化设置
原文请详见:http://www.ucai.cn/blogdetail/7036?mid=1&f=5 能够在线执行查看效果哦! 本文依据优才网课程整理,面向web开发人员,内容以有用为主,专业 ...
- php 当前时间 当前时间戳和数据库里取出的时间datetime格式进行比较大小
php 当前时间 当前时间戳和数据库里取出的时间datetime格式进行比较大小 UNIX时间戳转换为日期用函数: date() ,date('Y-m-d H:i:s', 1500219870); 日 ...
- 设置Chrome和IE搜索栏的默认搜索引擎
由于本人比较喜欢用Google香港作为自己的默认搜索引擎,Chrome里面可以轻松设置. ======================== Chrome ======================= ...
- SetCookies, cookie规范注册表和cookie存储将会优先于设置在HTTP客户端级别中默认的那些
遇到下面问题解决方法: Hey? 404 抱歉,你输入的网址可能不正确,或者该网页不存在. 7 秒后返回首页 使用独立的本地执行上下文来实现对每个用户(或每个线程)状态的管理. 定义在本地内容中的co ...
- Springboot实体类转JSON报错Could not find acceptable representation & 设置访问项目根路径的默认欢迎页面
=================实体类转JSON报错的解决办法============= 之前在springmvc的时候也报过这个错,原因以及springmvc中解决办法参考:https://www ...
- foxmail收取163企业邮箱设置,不能直接用foxmail默认的配置,否则一直提示帐号密码错误
foxmail收取163企业邮箱设置,不能直接用foxmail默认的配置,否则一直提示帐号密码错误,收件.发件服务器配置需要用imap.ym.163.com,smtp.ym.163.com三级域名,帐 ...
- 设置MATLAB中Current Folder的默认文件夹(转载)
设置MATLAB中Current Folder的默认文件夹 在我们使用MATLAB的过程中,其Current Folder面板会给我们带来一定的便利性.但遗憾的是,MATLAB自身没有提供友好的设置界 ...
- jQuery设置 select、radio、checkbox 默认选中的值
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
随机推荐
- ubuntu 18.04安装hadoop 2.9.2
先试用命令su,进入root用户权限 下载jdk及hadoop 分别解压,/java,/hadoop tar xvf xxx.tar(在所在目录下进行,或者) tar xvf /x/x/xxx.tar ...
- 服务器CPU很高-怎么办(Windbg使用坑点)
最近,碰到了一个线上CPU服务器很高的问题,并且也相当紧急,接到这个任务后,我便想到C#性能分析利器,Windbg. 终于在折腾半天之后,找出了问题,成功解决,这里就和大家分享一下碰到的问题. 问题1 ...
- redis部署以及各种数据类型使用命令等详解
参考:https://www.cnblogs.com/pyyu/p/9843950.html redis博客地址 编译安装redis 开始部署 [root@mcw01 ~]$ ls anaconda ...
- Qt:QTableWidget
0.说明 QTableWidget类提供了一个基于Item的Table视图,如下图: Table Widget提供了表格用于显示.Table中的每个Item都是QTableWidgetItem对象. ...
- WPS:字母自动变大写的解决办法
设置中:
- git for windows下载
https://npm.taobao.org/mirrors/git-for-windows/ 国内的镜像 转载自:https://blog.csdn.net/ee230/article/detail ...
- C#中?和:?和??代表什么
?代表可空类型修饰符 引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空.为了使值类型也可为空,就可以使用可空类型?:带便三元表达式 int a=b>c?b:c 如果 ...
- Python自动化 unittest生成测试报告(HTMLTestRunner)03
批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的. unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTest ...
- Linux下安装Apollo (Quick Start)
一.运行时环境 1.CentOS7 2.JDK1.8+ (安装JDK可参考 https://www.cnblogs.com/sportsky/p/15973713.html) 3.MySQL 5.6. ...
- [翻译] TensorFlow 分布式之论文篇 "TensorFlow : Large-Scale Machine Learning on Heterogeneous Distributed Systems"
[翻译] TensorFlow 分布式之论文篇 "TensorFlow : Large-Scale Machine Learning on Heterogeneous Distributed ...