所以我发现长度列表示"长度"是4,精度是10:
Col. name: SurveyNumber
type : int
computed: no
Length: 4
Precision: 10
它的数字如19350。为什么长度称为4并且它有5位数字:?
答案 0 :(得分:3)
4个字节!
它不是4位数。
4字节= 4 * 8 = 32位。
所以它可以保存2 ^ 32-1值数
(如果你有一个负数,那么它的半值 - symetric(-1)为零。 - 因为零也会计数。)
min = -2,147,483,648 max = 2,147,483,647
2^32 = 4294967296
divide by 2: = 2147483648
now step up 2^32-1 times
so you are here at : 2,147,483,647
答案 1 :(得分:3)
int的长度为4,因为它需要4个字节(32位)来存储值。
4个字节可以存储-2,147,483,648到2,147,483,647的数字,因此可以存储10位精度。
答案 2 :(得分:3)
MSDN上提供了所有信息。
Precision, Scale, and Length (Transact-SQL)
精确度是数字中的位数。 Scale是数字中小数点右边的位数。例如,数字123.45的精度为5,标度为2。
数字数据类型的长度是用于的字节数 存储号码。字符串或Unicode数据类型的长度 是字符数。 binary,varbinary和的长度 图像数据类型是字节数。例如,一个int数据类型 可以容纳10位数,存储在4个字节
答案 3 :(得分:1)
检查MySQL文档,这里很清楚:Integer Types (Exact Value)
4字节存储(长度为4)表示最多2 ^ 32个值。