Tahmin etmek için nasıl / MySQL sayısal değerler (INT) ve alan uzunluğunu hesaplamak?

3 Cevap java

Phpmyadmin hiçbir şey belirtilmemişse genellikle INT 11 için ayarlanmış belirttiğiniz olabilecek bir alan uzunluğu vardır.

  Field Name: ID
  Field Type: INT(11) // This is what I need to figure out!

Nasıl uzunluğunu hesaplayabilir ve uzunluk gerçekte ne anlama geliyor? Bu demek kaç basamak? Bayt?

Ve bu ile ne ilgisi var İmzasız ve İmzalı nedir?

Teşekkürler

3 Cevap

Alan (TINYINT, vb MEDIUMINT, INT,) türü böyle bir alanda koyabilirsiniz tamsayı maksimum boyutunu belirler. İmzasız yalnızca sıfırdan büyük sayıları saklamak istediğiniz anlamına gelir. İşte MySQL sayısal türleri için bir referans tablo ve ne sınırlar var: MySQL Manual - Numeric Types.

Eğer alan olarak imzasız tanımlamak, olası değerlerin aynı sayıda olsun, ama tablodan göreceğiniz gibi onlar, negatif ve pozitif sayılar arasında 50-50 bölünmüş olmayacak.

Eğer sayılar belli bir uzunluğa sıfır ile sıfır gerekiyorsa o yararlıdır - Parantez içindeki sayı sahada ZEROFILL belirtirseniz kullanılan numaradır. Eğer gibi yeni bir alan oluşturmak Örneğin, INT(5) ZEROFILL, sizin kadar içinde numarasını gösterecektir

00001
00002
00003
etc.

ancak aralık yine -2147483648 ile 2147483648 olacaktır. size alanını tanımlamak zaman ZEROFILL belirtmek yoksa parantez içindeki sayı göz ardı edilecektir.

Alan uzunluğu bir int (11) onbir basamak (fe 11111111111) saklayabilirsiniz, saf karakter uzunluğudur.

İmzalanan tamsayı negatif bir değer (fe -36768 den 36768 aralık) olabilir ki, demek, imzasız bir işaret yok anlamına gelmez, sadece (0-65536 fe) pozitif değerler saklayabilirsiniz.