我正在尝试将值分配给十进制列,但它给我的错误为"Mysql2::Error: Out of range value for column"
column lattitude(10,7)
正如您所见,我的lattitude列可以接受最多10位数,并且可以接受小数点后的7位数。
INSERT INTO mytable (lattitude) VALUES (1234.12345);
我想知道为什么上面的sql语句给我一个错误。根据我的研究,它不应该给我一个错误,因为它总共有9位数字和小数点后5位数。
答案 0 :(得分:2)
如果您的类型可以在小数位和之后接受7位,它可以接受10位数,那么该类型只能接受3位 >小数位。
您的样本数据在小数位前有四位数,因此您需要:
latitude decimal(11, 7)
当然,纬度的四位数字是没有意义的,至少是在地球表面定义纬度的方式。