Mysql运行模式及1690错误处理
发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,Mysql运行模式及1690错误处理 MySQL said: Documentation1690 - BIGINT UNSIGNED value is out of range in经过
千家信息网最后更新 2024年11月11日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安全错误
数据库的锁怎样保障安全
来辅助软件开发 运行
安永网络安全周阳
数据库ODBC是什么
数据库语言是否属于高级语言
数据库大于等于怎么打
剑网三双线各服务器
2018 9月网络技术
全国服务器风机技术指导
查看本地服务器安全隐患
总行软件开发中心
科研经费软件开发费
数据库中标准的的日期类型
高级数据库技术特点
cad安装服务器名称无效
怎么开服务器.
党的十九大关于网络安全
财税软件开发学习书本
json转换成数据库
长春网络安全课程
康健网络技术有限公司
网络技术属于电子信息工程
18秒连接到服务器
上海网络服务器机柜哪里有
邮政储蓄软件开发待遇四川
工业网络安全级别
深大网络安全
uspto数据库
网络安全风险评估基础要素
深职院网络技术在哪个校区
日志 存储 数据库