2010-11-11 13 views
10

Basit soru. Google'da arama yapmayı denedim ve yaklaşık 6 aramadan sonra, bunun daha hızlı olacağını düşündüm.SQL Int (N) boyutunun boyutu nedir?

SQL'de bir int ne kadar büyük?

// table creation statement. 
intcolumn INT(N) NOT NULL, 
// more table creation statement. 

INT(N) öğesi ne kadar büyük? Menzili nedir? 2^N mi yoksa N Byte uzun mu? (2^8N)? Ya da hiç bilmediğim başka bir şey var mı?

cevap

12

Veritabanına bağlıdır. MySQL'in bir extension vardır; burada INT (N), 4 ondalık basamaklı bir ekran genişliğine sahip bir INT anlamına gelir. Bu bilgi meta verilerde tutulur. INT'nin kendisi hala 4 bayttır ve 10000 ve üstü değerler saklanabilir (ve muhtemelen görüntülenir, ancak bu, uygulamanın sonuç kümesini nasıl kullandığını gösterir).

+0

Hey teşekkürler arkadaş! Bu benim sorum var :) – Michael

+0

Bu durum VARCHAR (n) türünden oldukça farklıdır, bu durumda n izin verilen maksimum saklanan karakterdir. {Http://stackoverflow.com/questions/5634104/what-is-the-size-of-column-of-int11-in-mysql-in-bytes adresine bakın, http://stackoverflow.com/a/1262249/ 1357094} – cellepo

-1

Bu, kullandığınız veritabanı motoruna bağlıdır. Fakat çoğu motorun INT/INTEGER tiplerinin 32-bit olduğunu düşündüğüne inanıyorum. Çoğu motor, imzayı belirtmenize izin verecektir.

Gerçek N, yalnızca basamak sayısını belirtir. Yani imzasız bir INT (3) 0-999 aralığındadır.

+1

Numara, tamsayı uzunluğunu belirtmiyor. Büyük tamsayılar bir "int (3)" sütununda saklanabilir – Luke

İlgili konular