2012-07-09 56 views
1

所以我發現長柱說,「長度」爲4,精度爲10:爲什麼SQL Server中的長度列有些混淆?

Col. name: SurveyNumber 
type : int 
computed: no 
Length: 4 
Precision: 10 

而且它有像它19350號。爲什麼長度叫做4,它有5位數字:?

+2

一個'int'爲4個字節。 – 2012-07-09 16:00:30

+1

Ints使用4個字節 – 2012-07-09 16:00:49

回答

3

4個字節!

它不是4位數。

4字節= 4 * 8 = 32位。

,因此它可以容納2^32-1的值數

(如果你有一個負數所以其半值 - 零對稱的(-1) - 導致零也算)

分鐘= 2,147,483,648最大= 2147483647

2^32 = 4294967296 

divide by 2: = 2147483648 

now step up 2^32-1 times 

so you are here at : 2,147,483,647 
+1

ummm。 4 * 8 = 32,取決於簽名,取值範圍爲0 - >〜40億,或者 - 20億 - > + 20億(大約)。 – 2012-07-09 16:01:38

3

的int具有爲4的長度,因爲它需要4個字節(32個比特)來存儲的值。

4個字節可以存儲從-2,147,483,648到2,147,483,647的數字,因此是10位數字的精度。

3

所有信息均可在MSDN上獲得。

Precision, Scale, and Length (Transact-SQL)

精密是在若干數字的數值。比例是數字中小數點右側的位數。例如,數123.45具有5精度和2.

長度的用於數字數據類型的比例是用於 店數的字節數。字符串或Unicode數據類型的長度 是字符數。二進制,varbinary和 圖像數據類型的長度是字節數。例如,int數據類型 可以容納10位數字,被存儲在4個字節