Heim >Datenbank >MySQL-Tutorial >Was ist der Zahlentyp von MySQL?

Was ist der Zahlentyp von MySQL?

青灯夜游
青灯夜游Original
2020-10-13 17:43:3414352Durchsuche

Die Zahlentypen von MySQL sind: INT-Typ, TINYINT-Typ, SMALLINT-Typ, MEDIUMINT-Typ, BIGINT-Typ, FLOAT-Typ, DOUBLE-Typ und DECIMAL-Typ.

Was ist der Zahlentyp von MySQL?

(Empfohlenes Tutorial: MySQL-Video-Tutorial)

Der numerische Typ von MySQL

1. Der Ganzzahltyp von MySQL wird auch als numerische Daten und numerische Daten bezeichnet Arten sind hauptsächlich Wird zum Speichern von Nummern verwendet.

MySQL bietet eine Vielzahl numerischer Datentypen. Je größer der Wertebereich, der gespeichert werden kann, desto größer ist der erforderliche Speicherplatz.

Die wichtigsten von MySQL bereitgestellten Ganzzahltypen sind TINYINT, SMALLINT, MEDIUMINT, INT und BIGINT, und den Attributfeldern können AUTO_INCREMENT-Einschränkungen für die automatische Inkrementierung hinzugefügt werden. In der folgenden Tabelle sind die numerischen Typen in MySQL aufgeführt.

Wie Sie der obigen Tabelle entnehmen können, benötigen verschiedene Arten von Ganzzahlen eine unterschiedliche Anzahl von Bytes zum Speichern. Der Typ TINYINT nimmt die kleinste Anzahl an Bytes ein, und der Typ BIGINT nimmt die größte Anzahl an Bytes ein Je mehr Typen vorhanden sind, desto größer ist der darstellbare Wertebereich. Was ist der Zahlentyp von MySQL?

Der Wertebereich jedes Datentyps kann anhand der Anzahl der belegten Bytes ermittelt werden. Zum Beispiel erfordert TINYINT 1 Byte (8 Bit) zum Speichern, dann ist der Maximalwert der vorzeichenlosen TINYINT-Zahl 28-1, also 255; der Maximalwert der TINYINT-Zahl mit Vorzeichen ist 27-1, also 127. Die Berechnungsmethode für den Wertebereich anderer Ganzzahltypen ist dieselbe, wie in der folgenden Tabelle dargestellt.

Was ist der Zahlentyp von MySQL?Tipps: Die Darstellungsbreite und der Wertebereich des Datentyps sind unerheblich. Die Anzeigebreite gibt nur die maximale Anzahl von Ziffern an, die MySQL anzeigen darf. Wenn die Anzahl der Ziffern kleiner als die angegebene Breite ist, wird sie mit Leerzeichen aufgefüllt. Wenn ein Wert eingefügt wird, der größer als die Anzeigebreite ist, kann der Wert trotzdem eingefügt und angezeigt werden, solange der Wert den Wertebereich der Ganzzahl dieses Typs nicht überschreitet. Beispielsweise wird das Jahresfeld in 19999 eingefügt. Wenn Sie SELECT verwenden, um den Spaltenwert abzufragen, zeigt MySQL das vollständige Jahr 19999 mit 5 Ziffern anstelle des 4-stelligen Werts an.

Andere ganzzahlige Datentypen können beim Definieren der Tabellenstruktur auch die erforderliche Anzeigebreite angeben. Wenn nicht angegeben, gibt das System für jeden Typ einen Standardbreitenwert an.

Verschiedene Ganzzahltypen haben unterschiedliche Wertebereiche und erfordern unterschiedlichen Speicherplatz. Daher sollte der am besten geeignete Typ basierend auf den tatsächlichen Anforderungen ausgewählt werden. Dies trägt dazu bei, die Abfrageeffizienz zu verbessern und Speicherplatz zu sparen.

2. MySQL-Dezimaltyp

MySQL verwendet Gleitkommazahlen und Festkommazahlen zur Darstellung von Dezimalzahlen.

Es gibt zwei Gleitkommatypen: Gleitkommazahlen mit einfacher Genauigkeit (FLOAT) und Gleitkommazahlen mit doppelter Genauigkeit (DOUBLE). Es gibt nur einen Festkommatyp, nämlich DECIMAL.

Sowohl Gleitkommatypen als auch Festkommatypen können durch (M, D) dargestellt werden, wobei M als Präzision bezeichnet wird und die Gesamtzahl der Ziffern angibt; D als Skalierung bezeichnet wird und die Anzahl der Dezimalstellen angibt.

Der Wertebereich des Gleitkommazahlentyps ist M (1~255) und D (1~30 und darf nicht größer als M-2 sein), die jeweils die Anzeigebreite und die Anzahl der Dezimalstellen darstellen. M und D sind in FLOAT und DOUBLE optional, und die Typen FLOAT und DOUBLE werden mit der maximalen von der Hardware unterstützten Präzision gespeichert. Der Standard-D-Wert für DECIMAL ist 0 und der M-Wert ist 10.

In der folgenden Tabelle sind die Dezimaltypen und Speicheranforderungen in MySQL aufgeführt.

Der Typ DECIMAL unterscheidet sich von FLOAT und DOUBLE. DOUBLE wird tatsächlich in Form einer Zeichenfolge gespeichert. Der maximal mögliche Wertebereich von DECIMAL ist der gleiche wie der von DOUBLE, der effektive Wertebereich wird jedoch durch M und D bestimmt. Wenn M geändert und D festgelegt wird, wird der Wertebereich größer, wenn M größer wird. Was ist der Zahlentyp von MySQL?

Wie Sie der obigen Tabelle entnehmen können, ist der Speicherplatz von DECIMAL nicht festgelegt, sondern wird durch den Präzisionswert M bestimmt, der M+2 Bytes belegt.

Der Wertebereich des FLOAT-Typs ist wie folgt:

Der vorzeichenbehaftete Wertebereich: -3,402823466E+38~-1,175494351E-38.
  • Wertebereich ohne Vorzeichen: 0 und -1,175494351E-38~-3,402823466E+38. Der Wertebereich des Typs
  • DOUBLE ist wie folgt:

Der vorzeichenbehaftete Wertebereich: -1,7976931348623157E+308~-2,2250738585072014E-308.
  • Wertebereich ohne Vorzeichen: 0 und -2,2250738585072014E-308~-1,7976931348623157E+308.
  • Tipps: Unabhängig davon, ob es sich um einen Festkomma- oder einen Gleitkommatyp handelt: Wenn die vom Benutzer angegebene Genauigkeit den Präzisionsbereich überschreitet, wird sie zur Verarbeitung gerundet.

FLOAT und DOUBLE verwenden standardmäßig die tatsächliche Genauigkeit (bestimmt durch die Computerhardware und das Betriebssystem), wenn die Genauigkeit nicht angegeben ist. DECIMAL wird standardmäßig auf (10, 0) gesetzt, wenn die Genauigkeit nicht angegeben ist.

Der Vorteil von Gleitkommazahlen gegenüber Festkommazahlen besteht darin, dass sie bei konstanter Länge einen größeren Bereich darstellen können. Der Nachteil besteht darin, dass es zu Genauigkeitsproblemen kommen kann.

Abschließend möchte ich betonen: In MySQL werden Festkommazahlen in Form von Zeichenfolgen gespeichert. Wenn die Genauigkeitsanforderungen relativ hoch sind (z. B. Währung, wissenschaftliche Daten), ist es besser, den Typ DECIMAL zu verwenden Die beiden anderen Gleitkommazahlen werden für die Subtraktion und Summe verwendet. Vergleichsoperationen sind ebenfalls problematisch. Sie müssen daher bei der Verwendung von Gleitkommazahlen vorsichtig sein und versuchen, Gleitkommavergleiche zu vermeiden.

Das obige ist der detaillierte Inhalt vonWas ist der Zahlentyp von MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn