超出Tinyint列MySQL的范围值

时间:2015-10-23 08:08:34

标签: mysql

所以我在MySQL 5.1上的tinyint(2) unsigned 专栏中遇到此问题。

我上次检查时,tinyint 无符号接受的值最高为255,参见https://dev.mysql.com/doc/refman/5.1/en/integer-types.html

现在,当我尝试为所有条目更新此列时,通过添加随机生成的值,介于100和160之间:

UPDATE composition SET range = range + (FLOOR(100 + RAND() * 60));

我收到一条智能消息,告诉我有一个超出范围的错误:

  

第1660行“范围”列的超出范围值

这怎么可能?

1 个答案:

答案 0 :(得分:0)

只需验证现有范围值,然后更新范围。

UPDATE `composition`
SET `range`=`range`+FLOOR(100 + RAND() * 60)
WHERE `range` < 95