mysql 时间精度问题

timestamp到2038年,还有14年时间,一个系统如果能活到那一刻也是相当不错了。
这里先看一下个datetime的问题,下面的插入数据的时间戳是2024-03-06 21:20:50.839

INSERT INTO psi_io_balance ( id, as_id, bill_date, order_id, busi_type, direction, customer_id, ca_name, warehouse_id, stock_id, out_count, out_unit_cost, out_cost, final_count, final_unit_cost, final_cost, create_time, sn ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )
==> Parameters: f0ad530bcd234a57bf11282e7900c0fe(String), 7(Integer), 2024-01-09 00:00:00.0(Timestamp), XSCKD202401090001(String), 03(String), 02(String), 557511(Integer), 工作室(String), 43ebf6d3ed024d738b3c788aea27ec1f(String), 538(Integer), 1(BigDecimal), 0.01000000(BigDecimal), 0.01(BigDecimal), 9.00000000(BigDecimal), 0.01000000(BigDecimal), 0.09(BigDecimal), 2024-03-06 21:20:50.839(Timestamp), 0(Integer)

因为系统设计,你可以任意选择时间插入,插入后将实时进行成本核算,于是就发生了向后面的数据作用。下面的create_time 应该大于2024-03-06 21:20:50.839,但因为数据库字段为datetime,因此自身也被查询数来了,可以看到2024-03-06 21:20:51 这个字段到秒,后面的毫秒被丢失

SELECT id,as_id,bill_date,order_id,busi_type,direction,vendor_id,customer_id,ca_name,warehouse_id,stock_id,in_count,in_unit_cost,in_cost,out_count,out_unit_cost,out_cost,final_count,final_unit_cost,final_cost,residue_count,end_flag,update_time,create_time,version,sn FROM psi_io_balance WHERE (bill_date = ? AND create_time > ? AND as_id = ? AND stock_id = ? AND warehouse_id = ?)
==> Parameters: 2024-01-09 00:00:00.0(Timestamp), 2024-03-06 21:20:50.839(Timestamp), 7(Integer), 538(Integer), 43ebf6d3ed024d738b3c788aea27ec1f(String)
<==    Columns: id, as_id, bill_date, order_id, busi_type, direction, vendor_id, customer_id, ca_name, warehouse_id, stock_id, in_count, in_unit_cost, in_cost, out_count, out_unit_cost, out_cost, final_count, final_unit_cost, final_cost, residue_count, end_flag, update_time, create_time, version, sn
<==        Row: f0ad530bcd234a57bf11282e7900c0fe, 7, 2024-01-09, XSCKD202401090001, 03, 02, null, 557511, 工作室, 43ebf6d3ed024d738b3c788aea27ec1f, 538, 0E-8, 0E-8, 0.00, 1.00000000, 0.01000000, 0.01, 9.00000000, 0.01000000, 0.09, 0E-8, 0, null, 2024-03-06 21:20:51, null, 0

mysql 5.6.4 之前数据库是会把datetime类型秒后面的精度丢掉,5.6.4之后的版本是会保留这个精度
因此需要修改数据库表

ALTER TABLE `psi`.`psi_io_balance` 
MODIFY COLUMN `create_time` datetime(3) NOT NULL COMMENT '创建时间' AFTER `update_time`;

这样查看数据库,字段就到毫秒了。一般可能用不到,但特定场景时间精确起到了关键作用
1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726227.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安卓简单登录

注意 有的朋友不知道登录咋写&#xff0c;这里我就简单给出相应代码&#xff0c;用的本地存储&#xff0c;没用网络请求&#xff0c;有需要可以替换成想要的&#xff0c;废话不多上代码 登录 import androidx.appcompat.app.AppCompatActivity;import android.content.Context…

JVM入门篇(面试前速补)

近期看看JVM&#xff0c;看了狂神说入门教学&#xff0c;总结下给大家。 文章目录 1、JVM的位置2、JVM的结构体系3、类加载器及双亲委派机制3.1、类加载器作用3.2、类加载器类型3.3、双亲委派机制 * 4、沙箱安全机制5、Native、方法区5.1、Native&#xff08;本地方法栈引用&a…

【SQL】1068. 产品销售分析 I

题目描述 leetcode题目&#xff1a;1068. 产品销售分析 I 写法 select Product.product_name, Sales.year, Sales.price from Sales left join Product on Sales.product_id Product.product_id记录细节&#xff1a;加上表名检索效率更高。 -- ERROR: 时间超出限制 > 加…

181基于matlab的利用LMS算法、格型LMS算法、RLS算法、LSL算法来估计线性预测模型参数a1和a2

基于matlab的利用LMS算法、格型LMS算法、RLS算法、LSL算法来估计线性预测模型参数a1和a2&#xff1b;预测信号由二阶线性预测模型产生。2.利用LMS算法和RLS算法将一个叠加有噪声的信号实现噪声消除&#xff0c;恢复原始信号。有22页试验分析文档。&#xff08;包括程序在内&…

华为OD机试 - 疫情扩散时间计算 - 矩阵(Java 2024 C卷 200分)

目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2024C卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;A卷B卷C卷&am…

解决 Python 脚本无法生成结果的问题

我们在python编程时&#xff0c;始终无法生成想要的成果&#xff0c;其实问题并非单一的&#xff0c;可能有多种情况导致的结果&#xff1b;例如&#xff1a;语法错误、运行时错误、依赖项问题、权限问题、死锁或阻塞等问题&#xff0c;下面我将举例说明遇到这些问题该如何解决…

Python 爬虫快速入门

1. 背景 最近在工作中有需要使用到爬虫的地方&#xff0c;需要根据 Gitlab Python 实现一套定时爬取数据的工具&#xff0c;所以借此机会&#xff0c;针对 Python 爬虫方面的知识进行了学习&#xff0c;也算 Python 爬虫入门了。 需要了解的知识点&#xff1a; Python 基础语…

Java多线程——对象的原子更新

目录 引出对象原子更新AtomicReferenceAtomicLongFieldUpdaterABA问题 Redis冲冲冲——缓存三兄弟&#xff1a;缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 Java多线程——对象的原子更新 对象原子更新 AtomicReference package cn.test3; import lombok.AllAr…

springboot之mybaitsPlus

mybaitsPlus是国内开发的&#xff0c;并不是springboot的项目&#xff0c;只是学习的时候直接就是适配的springboot。 MyBatis-Plus (opens new window)&#xff08;简称 MP&#xff09;是一个 MyBatis (opens new window)的增强工具&#xff0c;在 MyBatis 的基础上只做增强不…

linuxOPS基础_操作系统概述

计算机发展史 第一台计算机是1946 年2 月14 日诞生日&#xff0c;第一台名称ENIAC。体积一间屋子的大小&#xff0c;重量高达28t。 第一代&#xff1a;1946 – 1958 > 12 年 &#xff08;电子管&#xff09; 第二代&#xff1a;1958 – 1964 > 6 年 &#xff08;晶体管…

vue实现虚拟键盘

本文介绍一体机常用的虚拟键盘实现&#xff0c;主打一个免费文章。喜欢就点个赞支持一下吧 simple-keyboard官网&#xff1a;simple-keyboard - simple-keyboard - Francisco HodgeSimple-keyboard is a virtual keyboard for Javascript. You can use it as an input for dev…

请你简单说一下 Mysql 的事务隔离级别

什么情况&#xff0c;写了 5 年的 CRUD&#xff0c;还搞不清楚 Mysql 的事务隔离级别&#xff0c;难怪第一面就被刷下来。 一个 5 年经验的粉丝&#xff0c;在一个公司干了 5 年&#xff0c;觉得自己特厉害&#xff0c;什么都能搞定&#xff0c;结果每次一到技术面就被刷。问我…

【项目】图书管理系统

目录 前言&#xff1a; 项目要求&#xff1a; 知识储备&#xff1a; 代码实现&#xff1a; Main&#xff1a; Books包&#xff1a; Book&#xff1a; BookList&#xff1a; Operate包&#xff1a; Operate: addOperate: deleteOperate: exitOperate: findOperate:…

Redis(十七)分布式锁

文章目录 面试题分布式锁锁的种类分布式锁需要具备的条件和刚需分布式锁 案例nginx分布式微服务部署&#xff0c;单机锁问题分布式锁注意事项lock/unlocklua脚本自研版的redis分布式锁搞定lua脚本 可重入锁可重入锁种类可重入锁hset实现&#xff0c;对比setnx&#xff08;重要&…

16-Java命令模式 ( Command Pattern )

Java命令模式 摘要实现范例 命令模式&#xff08;Command Pattern&#xff09;中请求以命令的形式包裹在对象中&#xff0c;并传给调用对象 调用对象寻找可以处理该命令的合适的对象&#xff0c;并把该命令传给相应的对象&#xff0c;该对象执行命令 命令模式是行为型模式&…

Clion调试QT程序qDebug()、cout控制台无输出的可能解决方法

qDebug()不输出 在当前项目配置中添加一个环境变量 方法一、单独为配置 QT_ASSUME_STDERR_HAS_CONSOLE1 方法二、全局配置&#xff08;系统变量&#xff09; 一劳永逸 效果 cout不输出 Clion在debug调试C/C的时候&#xff0c;printf/cout不会实时输出情况 结果同上~ 谢阅…

SDM450核心板_高通SDM450安卓核心板模块性能参数

高通SDM450核心板是基于SDM450移动平台开发的一款高性能核心板。采用领先的14纳米技术&#xff0c;该核心板为高端智能设备提供了卓越的性能和优质的体验。板载2GB16GB的内存(可选配4GB32GB)&#xff0c;双 ISP(图像传感器处理器)支持丰富的照片细节和双摄像头体验&#xff0c;…

借助 Terraform 功能协调部署 CI/CD 流水线-Part 1

在当今快节奏的开发环境中&#xff0c;实现无缝、稳健的 CI/CD 流水线对于交付高质量软件至关重要。在本文中&#xff0c;我们将向您介绍使用 Bitbucket Pipeline、ArgoCD GitOps 和 AWS EKS 设置部署的步骤&#xff0c;所有步骤都将利用 Terraform 的强大功能进行编排。在Part…

01_Maven

文章目录 Maven安装MavenMaven的工作流程配置MavenMaven的使用module和project的关系如何用Maven导包 如何用Maven进行项目构建指令介绍clean指令compile指令package指令install指令 Maven的依赖管理如何导包scope作用域依赖传递依赖冲突 使用Maven开发项目Junit如何使用Junit …

力扣刷题Day11--21. 合并两个有序链表(js)

目录 1&#xff0c;题目 2&#xff0c;代码 2.1迭代思想 2.2递归思想 3&#xff0c;学习与总结 3.1js中的链表类 3.2递归思想 3.3提醒自己 1&#xff0c;题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 2&am…