Mysql运行模式及1690错误处理
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,Mysql运行模式及1690错误处理 MySQL said: Documentation1690 - BIGINT UNSIGNED value is out of range in经过
千家信息网最后更新 2025年01月20日Mysql运行模式及1690错误处理
Mysql运行模式及1690错误处理 MySQL said: Documentation
1690 - BIGINT UNSIGNED value is out of range in
经过查询,发现这个错误的原因是两个时间字段进行减法运算时,如果有一个时间为0000-00-00时造成的,根本原因是因为这样减法的结果会超过Mysql数值字段的范围,从而触发1690报错。
ERROR 1690 Out-of-Range
当Mysql中的数字字段存储了一个超过允许范围的数字时,会触发1690 Out of Range错误,是否触发错误取决于SQL运行时的模式:
当标准 Standar Mode 或 Strict Mode 运行时,数据插入会失败
当非限制模式 No Restrictive 运行时,Mysql将数值转化为范围允许内的最大或最小值进行存储
解决方法
SET sql_mode = 'NO_UNSIGNED_SUBTRACTION';
在进行计算时,首先执行上面的语句,可以避免减法运算过程中的错误。在Mysql文档中,明确指出两个整数进行相减运算的结果是一个无符号数,在Mysql 5.5.5 之前,如果产生一个负数,mysql会将这个数转换为一个最大的数值。
自Mysql 5.5.5 之后,如果产生一个负数,则会产生一个错误 ERROR 1690。
关于SQL_MODE
SQL_MODE默认为空,有很多的选项,建议在生产环境中设置成严格的MODE,这样可以在运维期间避免很多麻烦。
错误
运行
模式
减法
字段
数值
范围
运算
最大
两个
原因
数字
时间
结果
负数
存储
处理
最小
取决于
号数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
常用软件开发语言
网络技术是指什么
大兴区管理软件开发质量保障
cf3.16后战队服务器在哪
电脑IP境外跳转服务器
cod18用哪个服务器好
云南鸿顺智农软件开发
学软件开发以后想创业
python读取数据库表信息
商汤科技网络安全负责人
token服务怎么连接数据库
江门无线软件开发厂家直销
怎么租用大公司的服务器
广东诺特软件开发有限公司
ios 数据库 建多张表
君山区网络安全宣传周活动
软件开发质量指标哪些
北京互联网软件开发大概多少钱
我的世界服务器建筑师
海上重大安全事故数据库
软件开发流程及成果
桌面锁定软件开发
社会经济领域网络安全
软件开发工程师费用
记录u盘读写数据库
深圳软件开发关朋友圈
头条赛事活动网络安全
杭州直播软件开发
福州网络安全检查
义马软件开发哪里靠谱