Ausführliche Erklärung des Maximalwerts von int in MySQL

Ausführliche Erklärung des Maximalwerts von int in MySQL

Einführung

Ich werde ausführlich über das Problem schreiben, das ich vor zwei Tagen gesehen habe.

Byte

Wir alle wissen, dass Computer auf Binärzahlen basieren. Die grundlegende Speichereinheit ist das Bit, auch Bit oder Binärbit genannt. 1 Bit kann zwei Zahlen darstellen, 0 oder 1, und stellt die kleinstmögliche Informationsmenge dar. Jeder Inhalt, der kleiner als 1 Bit ist, wird nicht als Information betrachtet.

Komplexe Inhalte müssen durch mehrere Bits dargestellt werden. Als Maßeinheit wird häufig Byte, auch Byte genannt, verwendet. 1 Byte entspricht 8 Bits, d. h. 1 Byte kann 28 Inhalte darstellen.

Bytes in MySQL

Lassen Sie mich zunächst erklären, dass der Integer-Typ in MySQL in zwei Typen unterteilt werden kann: vorzeichenlos und vorzeichenbehaftet. Der spezifische Inhalt wird hier nicht erweitert. Die Größe von tinyint beträgt 1 Byte. Die Zahlen, die durch vorzeichenbehaftete Typen dargestellt werden können, sind in der folgenden Tabelle aufgeführt. (Hinweis: Die Tabelle wird gemäß der „Codierung“ geändert und dient nur als Beispiel. Sie stellt nicht den tatsächlichen Speicher von MySQL dar.)

Binärzahlen Dezimalzahlen
10000000 -128
10000001 -127
10000010 -126
10000011 -125
... ...
11111101 -3
11111110 -2
11111111 -1
00000000 0
00000001 1
00000010 2
... ...
011111100 124
011111101 125
011111110 126
011111111 127

int Maximalwert

Wie wir in der obigen Tabelle sehen können, wird das erste Bit verwendet, um das Vorzeichen darzustellen, sodass im Vorzeichen ein Bit weniger vorhanden ist, um den Inhalt zu speichern. Int ist 4 Bytes. Wenn wir das Obige kombinieren, können wir schlussfolgern, dass der maximale Wert von int in vorzeichenbehafteter Form ist

231−1=2147483647

Bei unsigned ist das erste Bit nicht erforderlich, um das Vorzeichen anzugeben.

232−1=4294967295

Referenzen: Binär, Bit, Byte, Komplement.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung der Bedeutung von M im MySQL-Datentyp int(M)
  • So konvertieren Sie den Typ varchar in der MySQL-Datenbank in den Typ int
  • Beispiel für die Änderung des Auto-Increment-Primärschlüsseltyps von int zu char in MySQL
  • Erklärung zur Verwendung von „Ersetzen“ und „Ersetzen in“ in MySQL
  • MySQL fügt einen Fremdschlüsselfehler hinzu: 1215 Die Fremdschlüsseleinschränkungslösung kann nicht hinzugefügt werden
  • So konvertieren Sie den MySQL-Datumstyp und den Int-Typ
  • Langsame Abfrage durch Konvertierung von int in varchar in MySQL-Datenbank
  • Vollständige Analyse des MySQL INT-Typs

<<:  Axios Sekundärkapselungsbeispiel Demo im Projekt

>>:  CentOS 7.2 erstellt einen Nginx-Webserver zum Bereitstellen des Uniapp-Projekts

Artikel empfehlen

Mehrere Möglichkeiten zum einfachen Durchlaufen von Objekteigenschaften in JS

Inhaltsverzeichnis 1. Selbstaufzählbare Eigenscha...

Beispiel für ein JavaScript-Meldungsfeld

In JavaScript können drei Arten von Meldungsfelde...

Eine kurze Erläuterung zu „Group By“ in MySQL

Inhaltsverzeichnis 1. Einleitung 2. Bereiten Sie ...

Einige Hinweise zur MySQL-Self-Join-Deduplizierung

Lassen Sie mich kurz das Funktionsszenario erklär...

Zusammenfassung der Verwendung von berechneten Vue-Eigenschaften und -Listenern

1. Berechnete Eigenschaften und Listener 1.1 Bere...

Einige etwas komplexere Verwendungsbeispielcodes in MySQL

Vorwort Ich glaube, dass die Syntax von MySQL nic...

Wie löst Vue das domänenübergreifende Problem des Axios-Request-Frontends?

Inhaltsverzeichnis Vorwort 1. Warum treten domäne...

JavaScript zum Erzielen eines Mauszieheffekts

In diesem Artikel wird der spezifische JavaScript...

Änderung und Abfrage von Python MySQL-Datenbanktabellen

Python stellt eine Verbindung zu MySQL her, um Da...

HTML+CSS-Implementierungscode für abgerundete Rechtecke

Mir war langweilig und plötzlich fiel mir die Impl...

Einführung und detaillierte Verwendung von React Fragment

Inhaltsverzeichnis Vorwort Motivation für Fragmen...

Der Unterschied zwischen Docker Run und Start

Der Unterschied zwischen Ausführen und Starten in...