MySQL - INT: Ein Anfängerleitfaden

Hallo, angehende Datenbankenthusiasten! Heute tauchen wir in die Welt von MySQL ein und erkunden eines seiner grundlegendsten Datentypen: INT. Keine Sorge, wenn du neu im Programmieren bist – ich werde dich auf dieser Reise Schritt für Schritt führen, genau wie ich es in den letzten Jahren für unzählige Schüler getan habe. Also, rollen wir die Ärmel hoch und fangen an!

MySQL - INT

Der MySQL INT Datentyp

Der INT Datentyp in MySQL ist wie das starke, zuverlässige Arbeitstier der numerischen Datentypen-Familie. Er wird verwendet, um ganze Zahlen (Integer) ohne Dezimalpunkte zu speichern. Stell dir vor, es ist eine Box, die Zahlen von -2.147.483.648 bis 2.147.483.647 aufnehmen kann. Das sind viele Zahlen!

Lassen wir eine einfache Tabelle erstellen, um INT in Aktion zu sehen:

CREATE TABLE meine_erste_tabelle (
id INT,
alter INT,
punkte INT
);

In diesem Beispiel haben wir eine Tabelle namens meine_erste_tabelle mit drei Spalten erstellt: id, alter und punkte. Alle diese Spalten verwenden den INT Datentyp.

Nun fügen wir einige Daten hinzu:

INSERT INTO meine_erste_tabelle (id, alter, punkte) VALUES (1, 25, 95);
INSERT INTO meine_erste_tabelle (id, alter, punkte) VALUES (2, 30, 88);
INSERT INTO meine_erste_tabelle (id, alter, punkte) VALUES (3, 22, 100);

Hier fügen wir drei Zeilen Daten zu unserer Tabelle hinzu. Jede INSERT-Anweisung fügt eine neue Person mit ihrer id, ihrem alter und ihren punkten hinzu.

Auto Increment mit MySQL INT

Eine der coolen Funktionen von INT ist, dass es automatisch inkrementieren kann. Dies ist super nützlich, wenn du eindeutige Identifikatoren für jede Zeile in deiner Tabelle generieren möchtest. Lass mich dir zeigen, wie es funktioniert:

CREATE TABLE auto_increment_beispiel (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50)
);

INSERT INTO auto_increment_beispiel (name) VALUES ('Alice');
INSERT INTO auto_increment_beispiel (name) VALUES ('Bob');
INSERT INTO auto_increment_beispiel (name) VALUES ('Charlie');

In diesem Beispiel wird die id Spalte automatisch 1, 2 und 3 an Alice, Bob und Charlie zugewiesen. Es ist, als hättest du einen hilfreichen Assistenten, der deine Einträge nummeriert!

MySQL INT UNBERSIGNED

Manchmal brauchst du nur positive Zahlen. Da kommt UNSIGNED sehr gelegen. Es verdoppelt effektiv den maximalen Wert, den ein INT halten kann, von 0 bis 4.294.967.295.

CREATE TABLE positive_zahlen (
id INT UNSIGNED,
menge INT UNSIGNED
);

INSERT INTO positive_zahlen (id, menge) VALUES (1, 100);
INSERT INTO positive_zahlen (id, menge) VALUES (2, 4294967295);

Diese Tabelle akzeptiert nur positive Zahlen, was perfekt für Dinge wie Mengen oder Altersangaben ist.

MySQL INT mit Anzeigebreiten-Attribut

Das Anzeigebreiten-Attribut beeinflusst nicht den Wertebereich, den ein INT speichern kann, aber es kann deine Daten schöner aussehen lassen, wenn sie angezeigt werden. So funktioniert es:

CREATE TABLE anzeigebreite_beispiel (
id INT(4),
code INT(6) ZEROFILL
);

INSERT INTO anzeigebreite_beispiel (id, code) VALUES (1, 123);
INSERT INTO anzeigebreite_beispiel (id, code) VALUES (1000, 456789);

Wenn du diese Daten abfragst, wird code als 000123 und 456789 dargestellt. Es ist, als hättest du führende Nullen hinzugefügt, um alle deine Zahlen auf die gleiche Breite zu bringen.

MySQL INT mit ZEROFILL Attribut

ZEROFILL ist wie der beste Freund der Anzeigebreite. Es füllt deine Zahlen automatisch mit Nullen, um die angegebene Breite zu erreichen. Sehen wir uns das in Aktion an:

CREATE TABLE zerofill_beispiel (
id INT(5) ZEROFILL
);

INSERT INTO zerofill_beispiel (id) VALUES (1);
INSERT INTO zerofill_beispiel (id) VALUES (100);
INSERT INTO zerofill_beispiel (id) VALUES (10000);

Wenn du diese Daten abfragst, siehst du 00001, 00100 und 10000. Es ist großartig für die Erstellung konsistent aussehender Codes oder IDs.

INT Datentyp mit einem.Client-Programm

Nun setzen wir all dieses Wissen in die Praxis um, indem wir ein Client-Programm verwenden. Ich werde den MySQL-Befehlszeilen-Client für dieses Beispiel verwenden, aber die Prinzipien gelten für jeden MySQL-Client.

-- Verbinde zu MySQL
mysql -u dein_benutzername -p

-- Erstelle eine Datenbank
CREATE DATABASE int_beispiele;

-- Verwende die Datenbank
USE int_beispiele;

-- Erstelle eine Tabelle mit verschiedenen INT-Typen
CREATE TABLE int_showcase (
id INT AUTO_INCREMENT PRIMARY KEY,
regulärer_int INT,
unbeschränkter_int INT UNSIGNED,
anzeigebreite_int INT(4),
zerofill_int INT(6) ZEROFILL
);

-- Füge einige Daten hinzu
INSERT INTO int_showcase (regulärer_int, unbeschränkter_int, anzeigebreite_int, zerofill_int)
VALUES (-1000, 1000, 123, 123);

INSERT INTO int_showcase (regulärer_int, unbeschränkter_int, anzeigebreite_int, zerofill_int)
VALUES (2000000, 3000000, 45678, 45678);

-- Hole die Daten ab
SELECT * FROM int_showcase;

Wenn du diesen Code ausführst, siehst du, wie jeder INT-Typ unterschiedlich funktioniert. Der regulärer_int kann negative Werte speichern, der unbeschränkter_int nur positive, der anzeigebreite_int sieht normal aus und der zerofill_int fügt führende Nullen hinzu.

Hier ist eine Tabelle, die die INT-Variationen zusammenfasst, die wir behandelt haben:

INT-Typ Wertebereich Beispielhafte Verwendung
INT -2.147.483.648 bis 2.147.483.647 Allgemeine Zweck-Integer-Speicherung
INT UNSIGNED 0 bis 4.294.967.295 Nur positive Integer
INT AUTO_INCREMENT Wie INT, aber automatisch erhöht Primärschlüssel, eindeutige Identifikatoren
INT(N) Wie INT, aber beeinflusst die Anzeigebreite Formatierung der Ausgabe
INT(N) ZEROFILL Wie INT, füllt mit Nullen Erstellung konsistenter Breiten-Codes

Und da hast du es, Leute! Wir sind durch die Welt der MySQL INTs gereist, von den Grundlagen bis zu einigen nützlichen Tricks. Denke daran, wie bei jeder neuen Fähigkeit, erfordert das Beherrschen von MySQL Übung. Also habe keine Angst, diese Konzepte auszuprobieren. Wer weiß? Vielleicht wirst du ja der INT-Experte in deinem Programmierkreis! Viel Spaß beim Abfragen!

Credits: Image by storyset