2016-08-23 3 views
0

Wenn ich eine MyISAM-Tabelle mit Dynamic als Zeilenformat habe, sind die numerischen Spalten (int (11), bigint (12) ..) dynamische oder statische Spalten?Numerische Spalte mit dynamischem Zeilenformat in MySQL

Zum Beispiel, wenn ich als Spaltentyp int (11) habe, aber der Maximalwert für diese Spalte 1234 ist, verwendet diese Spalte in diesem Fall nur den benötigten Speicherplatz int (4) oder verwendet sie Leerzeichen wie int (11)?

+1

Die '()' hat ** NO ** Auswirkungen auf die Speicheranforderungen. ein 'int' ist ein' int', egal was, und belegt 4 Bytes. Die '()' ist einfach da, um mysql mitzuteilen, wie viele Ziffern angezeigt werden sollen, 'int (1)' wird weiterhin 4 Bytes belegen, genauso wie int (11). –

Antwort

3

Die Länge gerade Spezifiziert Wie viele Zeichen werden angezeigt, wenn Daten mit dem mysql-Befehlszeilenclient ausgewählt werden.

+0

Ich lese mysql Doc vor dem Stellen der Frage, aber ich habe nicht verstanden. Was meinst du mit "jede Spalte ist dynamisch"? int kann weniger als 4 Bytes belegen ?? – Imanez

+1

Es geht mehr um Zeilenformat selbst. Die Tatsache, dass int eine feste Länge ist, ist nicht so wichtig, auch wenn eine numerische Spalte den Wert Null hat, wird sie in der Bitmap markiert und nicht auf der Platte gespeichert –

Verwandte Themen