超出数值的问题

超出数值的问题

CREATE TABLE test_int(

  a tinyint(2) UNSIGNED,

  b smallint UNSIGNED,

  C mediumint(22) ZEROFILL,

  d int zerofill,

  e bigint unsigned

);


mysql> INSERT INTO test_int(a) VALUES(-11);

ERROR 1264 (22003): Out of range value for column 'a' at row 1

我的用的cmd 并不能截断数据 而是都是直接报错

是配置文件的问题吗

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
guly 2017-08-06 19:17:49

你好,代码中可以看出字段a的值为2,插入值得字符串长度超过该值,修改a字段的长度即可,如果解决了您的问题请采纳,祝学习愉快!

  • 提问者 心情心不晴 #1
    老师的超过长度会自动进行截段 并且产生一个warning
    2017-08-06 23:02:04
  • guly 回复 提问者 心情心不晴 #2
    你好,老师的超过长度会自动截取,老师的字段无类型,代码中可以看处您的字段类型为 UNSIGNED, UNSIGNED的值是从零开始的,如果解决您的问题请采纳,祝学习愉快!
    2017-08-07 10:21:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师