IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> mysql 1292错误码timestamp存储范围问题 -> 正文阅读

[大数据]mysql 1292错误码timestamp存储范围问题

111

问题

生产上出现了数据添加失败的情况 (设置一条信息的有效时长, 到期自动失效 )

bug

查看日志发现了是 insert 的时候报错了.
在测试环境也能 正常复现, 设置到期时间(end_time)为 2040年以后的任意时间都不行

复现

正常情况是这样的:
在这里插入图片描述
异常情况是这样的:
在这里插入图片描述
遇见这样的问题 就可以 直接去百度 他提示的 错误码 1292 就能找到答案了

原因

这个表的时间类型是 : timestamp
在这里插入图片描述

解释

MYSQL timestamp取值范围是 1970-01-01 00:00:00 到 2038-01-19 3:14:07
TIMESTAMP和DATETIME的取值范围不同同时存储不同,
TIMESTAMP占四个字节取值范围为 1970-01-01 00:00:00 到 2038-01-19 3:14:07

有待考证:

那么为什么是这个取值范围呢 4个字节明显不够存储日期格式。4字节为2^32次方
那么我们可以分析timestamp实际是C语言的一个INT 类型带符号位的。
用ORACLE的格式算出来为

SQL> select to_date('1970-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')+(power(2,31)-1)/(60*60*24) from dual;

-- TO_DATE('1970-01-0100:00:00','
-- ----------------------------
-- 2038/1/19 3:14:07

解决方案:

将时间戳格式给为 datetime 就可以了

create table `test_time_bak_20220505` as select * from `test_time`;

alter table `test_time` modify column `end_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP;

改完以后的数据:
在这里插入图片描述
在这里插入图片描述
参考文档 =https://blog.csdn.net/qq1137623160/article/details/79142254

每日上一当, 当当不一样.

每日踩一坑, 坑坑都很深.

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-07 11:15:14  更:2022-05-07 11:16:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 0:45:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码