MySQL整型数据溢出的解决方法

首页 > 数据库 > Mysql 更新日期: 2015-05-19
这篇文章主要介绍了MySQL整型数据溢出的解决方法,本文出现整型溢出的mysql版本是5.1,5.1下整型溢出不会报错,而会变成负数,需要的朋友可以参考下

今天接到一个朋友电话说是觉的数据库被别人更改了,出现数据不对的问题 。经过很久的排查是数据类型溢出了(发生问题的版本是MySQL 5.1)。后来通过给朋友那边把MySQL 5.1升级到MySQL 5.5去解决这个问题。 这也让我有兴趣去了解一下MySQL不同版本数据类型溢出的处理机制。

先看一下MySQL支持的整型数及大小,存储空间:

pe Storage Minimum Value Maximum Value 存储大小
(Bytes) (Signed/Unsigned) (Signed/Unsigned) byte
TINYINT 1 -128 127 1 byte
    0 255  
SMALLINT 2 -32768 32767 2 bytes
    0 65535  
MEDIUMINT 3 -8388608 8388607 3 bytes
    0 16777215  
INT 4 -2147483648 2147483647 4 bytes
    0 4294967295  
BIGINT 8 -9223372036854775808 9223372036854775807 8 bytes
    0 18446744073709551615  

另外请记着mysql的数据处理会转成bigint处理,所以这里就用bigint几个测试:


> 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!

相关文章
  • PHP中使用sleep造成mysql读取失败的案例和解决方法
    这篇文章主要介绍了PHP中使用sleep造成mysql读取失败的案例和解决方法,如果遇到这个问题,可能会耗费你N久的时间,希望你能快速的搜索到这篇文章吧,需要的朋友可以参考下近日,由于项目需求需要用到sleep函数定时从数据库取一堆数据出来去执行某些操作.sleep等待的时间至少有一个小时以上此前做过测试用sleep函数去完成数小时后执行的操作是可行的 可邪 ...
  • MySQL导入sql脚本错误:2006解决方法
    MySQL导入sql脚本错误:2006解决方法
    本文给大家分享的是在使用mysql导入数据的时候,提示脚本错误2006 MySQL server has gone away的解决方法,非常实用,有需要的小伙伴,可以参考下.MySQL导入sql脚本错误:2006 - MySQL server has gone away 到如一些小脚本很少报错,但最近导入一个10+M的SQL脚本,却重复报错: Error o ...
  • PHP连接MySQL查询结果中文显示乱码解决方法
    MySQL和Apache两个系统的编码字符集问题让我费劲脑筋,吃尽苦头.网上对这些问题的解决比较零散,比较片面,大部分是提供解决方法,却不说为什么.于是我将这几天收获总结一下,避免后来者再走弯路我们首先假设数据库中采用的编码为UTF-8这时我们在PHP页面中应当首先添加 代码如下:<meta http-equiv="Content-Type& ...
  • C#mysql插入数据,中文乱码的解决方法
    用C#操作mysql时, 插入数据中文都是乱码,只显示问号,数据库本身使用的是utf-8字符有两种解决办法: 一种是在执行语句前面设置,如: 代码如下:MySQLCommand mCommand = new MySQLCommand("set names gb2312", m_Connection);另一种是直接加在连接字符串里,如: 代 ...
  • 分享一下Mysql常见的几个错误问题及解决方法
    这篇文章主要为大家分享一下Mysql常见的几个错误问题及解决方法,需要的朋友可以参考下1.问题: mysql DNS反解:skip-name-resolve 错误日志有类似警告: 1.120119 16:26:04 [Warning] IP address '192.168.1.10' could not be resolved: Name or servi ...
猜你喜欢