MySQL -Datentypen

MySQL -Datentypen
In einer MySQL -Datenbank gibt es viele Tabellen, die mehrere Spalten oder Felder enthält, um verschiedene Datentypen zu speichern. Es ist sehr wichtig, angemessene Kenntnisse über die unterstützten Datentypen von MySQL zu erhalten, um die Struktur der Eigenschaft der Datenbanktabelle zu erstellen. Jeder Datentyp von MySQL kann Daten in verschiedenen Größen speichern. Jeder Datentyp kann die Daten im Zahlen- oder String -Format speichern. Die Größe und Verwendung der verschiedenen MySQL -Datentypen zum Erstellen einer Datenbanktabelle wurden in diesem Tutorial beschrieben.

Kategorien von MySQL -Datentypen:

MySQL -Datentypen sind in die folgenden Kategorien unterteilt.

  1. String -Daten
  2. Numerische Daten
  3. Binäre große Objektdaten
  4. Datums- und Uhrzeitdaten
  5. Räumliche Daten
  6. JSON -Daten

Die Datentypen, die sich auf jede Gruppe beziehen, haben nachstehend mit Beispielen erläutert.

String -Datentyp:

Das Feld für Zeichenfolge Datentyp kann alle alphabetischen und numerischen Zeichen enthalten, um eine Zeichenfolge von kleinem und großem Text wie Name, Adresse, Beschreibung usw. zu definieren. Der binäre Inhalt wie eine Bild- oder Audio -Datei kann im Feld des String -Datentyps gespeichert werden. Die in MySQL unterstützten String -Datentypen wurden unten mit Größe und Beschreibung gezeigt.

String -Datentyp Beschreibung
Char (n) Es wird verwendet, um eine feste Anzahl von Zeichen zu speichern. Es kann maximal 255 Zeichen enthalten. Der Argumentwert definiert die Länge der Zeichenfolge. Wenn der Wert des Zeichenfelds weniger Charakter enthält als der N Wert, dann wird der Speicherwert für die verbleibenden Zeichen hinzugefügt.
Varchar (n) Es wird verwendet, um eine Zeichenfolge der variablen Anzahl von Zeichen zu speichern. Es kann auch maximal 255 Zeichen enthalten. Der Argumentwert definiert die Länge der Zeichenfolge. Es verschwendet keinen Platz wie den Char -Datentyp.
TinyText (n) Es funktioniert wie ein Varchar -Datentyp und kann maximal 255 Zeichen speichern.
Text (n) Es wird verwendet, um größere Zeichenfolgenwerte zu speichern, die maximal 65.535 Zeichen enthalten.
MediumText (n) Es speichert einen größeren Textwert als der Text -Datentyp, der maximal 16.777.215 Zeichen enthalten kann.
Longtext (n) Es speichert größere Textwerte als der MediumText -Datentyp mit maximal 4 GB oder 4,294.967.295 Zeichen.
Binär (n) Es wird verwendet, um binäre Zeichen zu speichern, und die Länge dieser Daten ist festgelegt. Es kann maximal 255 Zeichen speichern.
Varbinär (n) Es funktioniert wie der binäre Datentyp, aber seine Länge ist nicht festgelegt.
Enum (v1, v2, v3,…, vn) Die vollständige Form von Enum ist die Aufzählung, um einen einzelnen Wert aus mehreren Werten auszuwählen. Der numerische Index wird verwendet, um die Stringwerte zu definieren. Es kann maximal 65.535 Werte haben.
Set (v1, v2, v3,…, vn) Es wird verwendet, um 0 oder mehr Werte aus der Werteliste auszuwählen. Es kann maximal 64 Werte speichern.

Numerischer Datentyp:

Das Feld Numeric Datentyp speichert die gesamte Nummer wie ID, Sicherheitsnummer usw., oder die Bruchnummer wie Preis, CGPA usw. Verschiedene Arten von numerischen Datentypen haben nachstehend beschrieben.

Numerischer Datentyp Beschreibung
Bit (n) Es wird verwendet, um Bitwerte zu speichern. Die Anzahl der Bits pro Wert wird durch definiert durch N Hier. Es kann Werte von 1 auf 64 speichern. Der Standardwert ist 1.
Bool/boolean Es wird verwendet, um wahre oder falsche Werte zu speichern. 0 Wert wird als als angesehen FALSCH Wert, und jede Zahl ungleich Null wird als als angesehen WAHR Wert.
Tinyint (n) Es wird verwendet, um einen sehr kleinen Ganzzahlwert zu speichern. Es kann Werte von -128 auf 127 für signierte Ganzzahlen und 0 bis 255 für eine unsignierte Ganzzahl speichern. Der N definiert die Länge der Zahl.
Smallint (n) Es wird verwendet, um einen kleinen Ganzzahlwert zu speichern. Es kann Werte von - -32768 bis 32767 für signierte Ganzzahlen und 0 bis 65535 für eine nicht signierte Ganzzahl speichern. Der N definiert die Länge der Zahl.
Medium in (n) Es wird verwendet, um einen mittelgroßen Ganzzahlwert zu speichern. Es kann Werte von -8388608 bis 8388607 für signierte Ganzzahlen und 0 bis 16777215 für eine nicht signierte Ganzzahl speichern. Der N definiert die Länge der Zahl.
Int (n)/ Integer (n) Es wird verwendet, um einen Ganzzahlwert zu speichern. Es kann Werte von -2147483648 bis 2147483647 für signierte ganze Zahlen und 0 bis 4294967295 für eine nicht signierte Ganzzahl speichern. Der N definiert die Länge der Zahl.
Bigint (n) Es wird verwendet, um einen großen Ganzzahlwert zu speichern. Es kann Werte von -9223372036854775808 bis 9223372036854775807 für unterschriebene ganze Zahlen und 0 bis 18446744073709551615 für eine nicht signierte Ganzzahl speichern. Der N definiert die Länge der Zahl.
Float (n, d) Es wird verwendet, um kleine Bruchzahlen zu speichern. Hier, N definiert die Länge der gesamten Zahl und D definiert die Länge der Zahl nach dem Dezimalpunkt. Es sind 2 Bytes erforderlich, um die Daten zu speichern, und 24 Ziffern können nach dem Dezimalpunkt hinzugefügt werden. Der Standardwert von n beträgt 10 und 2 beträgt 2.
Doppelt (n, d) Es wird verwendet, um große Bruchzahlen zu speichern. Hier, N definiert die Länge der gesamten Zahl und D definiert die Länge der Zahl nach dem Dezimalpunkt. Es sind 8 Bytes erforderlich, um die Daten zu speichern, und 53 Ziffern können nach dem Dezimalpunkt hinzugefügt werden. Der Standardwert von n beträgt 16 und 4 beträgt 4.
Decimal (N, D) Es wird verwendet, um eine Fixpunktfraktionalzahl zu definieren, die eine große Bruchnummer speichern kann als Float und Double. Hier der Maximalwert der N kann 65 sein und der Maximalwert der D kann 30 sein.

Binärer großer Objektdatentyp (Blob):

Dieser Datentyp wird verwendet, um die variable Menge an Binärdaten zu speichern. Im Folgenden wurden vier verschiedene Arten von Blob -Datentypen beschrieben.

Blob -Datentyp Beschreibung
Tinyblob Es kann verwendet werden, um Daten von maximal 255 Bytes zu speichern.
Blob (n) Es kann verwendet werden, um Daten von maximal 65.535 Bytes zu speichern.
Mediumblob Es kann verwendet werden, um Daten von maximal 16.777.215 Bytes zu speichern.
Langblob Es kann verwendet werden, um Daten von maximal 4 GB oder 4.294.967.295 Bytes zu speichern.

Datums- und Uhrzeit -Datentyp:

Dieser Datentyp wird verwendet, um Datum und zeitbezogene Werte zu speichern. Das Feld Datum und Uhrzeittyp kann Datum, Uhrzeit, DateTime, Jahr und Zeitstempelwerte speichern. Wenn ungültige Daten für den Feldwert von Datum und Uhrzeit bereitgestellt werden, wird der Nullwert eingefügt. Verschiedene Datentypen von Datums- und Zeitdatentypen haben nachstehend beschrieben.

Datum des Datums und Uhrzeittyps Beschreibung
DATUM Es wird verwendet, um das Datum im Format anzuzeigen. 'yjyy-mm-dd.'' Es kann Werte von speichern '1000-01-01' bis '9999-12-31' '.
ZEIT Es wird verwendet, um die Zeit im Format anzuzeigen. 'HH-MM-SS.'' Es kann Werte von speichern '-838: 59: 59' bis '838: 59: 59'.
TERMINZEIT Es wird verwendet, um die Zeit im Format anzuzeigen. 'yjyy-mm-dd hh-mm-ss''. Es kann Werte von speichern '1000-01-01 00:00:00' bis '9999-12-31 23:59:59'.
Jahr [(2 | 4)] Es speichert 2 oder 4 Ziffern des Jahreswerts. Der Wert von 2 Ziffern wird nicht von der MySQL Version 8 unterstützt.0.
Zeitstempel (m) Es wird verwendet, um die Zeit im Format anzuzeigen, "Yyyy-MM-DD HH-MM-SS". Es kann Werte von speichern '1970-01-01 00:00:01' UTC bis '2038-01-19 03:14:07' UTC.

Räumlicher Datentyp:

Diese Art von Datentyp speichert die geografischen und geometrischen Daten. Im Folgenden wurden verschiedene räumliche Datentypen beschrieben.

Räumlicher Datentyp Beschreibung
PUNKT Es wird verwendet, um die Werte der X- und Y -Koordinaten eines Punktes zu speichern.
Mehrpunkt Es wird verwendet, um eine Sammlung mehrerer Punkte zu speichern.
Polygon Es wird verwendet, um eine mehrisidte Geometrie darzustellen. 0 oder mehr Innengrenzen und eine Außengrenze können durch Polygon -Datentyp definiert werden.
Multiplygon Es wird verwendet, um eine Sammlung mehrerer Polygonelemente zu speichern.
Linestring Es wird verwendet, um eine Kurve von einem oder mehreren Punktwerten darzustellen.
Multilinestring Es repräsentiert Multi-Kurve-Geometrie, die eine Sammlung von Linestring-Werten enthält.
GEOMETRIE Es wird verwendet, um einen Punkt oder ein Aggregat von Punkten räumlicher Werte jeglicher Art zu speichern.
GeometryCollection Es wird verwendet, um eine Sammlung von 0 oder mehr Geometriewerten zu speichern.

JSON -Datentyp:

Der Datentyp wird verwendet, um JSON -Dokumente problemlos zu speichern und zuzugreifen. Dieser Datentyp wird verwendet, um JSON -Daten zu validieren und einen optimalen Speicherplatz automatisch bereitzustellen. Wenn für das Feld JSON ungültige Daten bereitgestellt werden, erzeugt dies einen Fehler.

Voraussetzungen:

Sie müssen eine Datenbanktabelle mit den Daten in einer MySQL -Datenbank erstellen, um die Verwendung von MySQL -Datentypen zu überprüfen. Öffnen Sie das Terminal und verbinden Sie sich mit dem MySQL -Server, indem Sie den folgenden Befehl ausführen.

$ sudo mysql -u root

Führen Sie den folgenden Befehl aus, um eine Datenbank mit dem Namen zu erstellen test_db.

Datenbank erstellen test_db;

Führen Sie den folgenden Befehl aus, um die Datenbank auszuwählen.

Verwenden Sie test_db;

Verwendung von MySQL -Datentypen:

In diesem Teil des Tutorials haben mehrere Beispiele einige Verwendungen von MySQL -Datentypen zum Erstellen von Datenbanktabellen gezeigt.

Beispiel 1: Verwendung von String- und numerischer Datentyp

Die folgende Abfrage erstellt eine Tabelle mit fünf Feldern. Der Datentyp der Produkt ID Das Feld ist int und der Hauptschlüssel wird automatisch inkrementiert. Der Datentyp der Name Feld ist varchar. Der Datentyp der Gewicht Feld ist klein. Der Datentyp der Einheit Feld ist aufgeblieben. Der Datentyp der Preis Feld ist dezimal. Führen Sie die folgende Anfrage aus, um die zu erstellen Produkte Tisch.

Tischprodukte erstellen (
product_id int nicht null auto_increment,
Nennen Sie Varchar (45) nicht null,
Gewicht Smallint NICHT NULL,
Einheit Enum ('kg', 'pound', 'gram'),
Preisdezimal (6, 2) nicht null,
Primärschlüssel (product_id));

Führen Sie den folgenden Befehl aus, um die Struktur der Struktur zu überprüfen Produkte Tisch.

Produkte beschreiben;

Ausgang:


Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Führen Sie die folgende Anfrage aus, um den Inhalt des Produkte Tisch.

Einfügen in "Produkte" ("product_id", "name", "weil", "uneinheit", "preis") Werte (null, "kuchen", "500", "pound", 199.99 ');

Führen Sie den folgenden Befehl aus, um den Inhalt des Produkte Tisch.

Aus Produkten auswählen;

Ausgang:

Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Beispiel 2: Verwendung des Datums- und Zeitdatentyps

Die folgende Abfrage erstellt eine Tabelle mit vier Feldern. Der Datentyp von Produkt ID Field ist kleiner und primärer Schlüssel. Der Datentyp der Herstellungsdatum Feld ist datetime. Der Datentyp der abgelaufen_date Feld ist datetime. Der Datentyp der Beitrittsdatum Feld ist Zeitstempel. Führen Sie die folgende Anfrage aus, um die zu erstellen product_validity Tisch.

Tabelle product_validity erstellen (
product_id smallint (4),
Fertigungsdatetime nicht null,
abgelaufen_date datetime nicht null,
Eintragszeitstempel,
Primärschlüssel (product_id));

Führen Sie den folgenden Befehl aus, um die Struktur der Struktur zu überprüfen product_validity Tisch.

Beschreiben product_validity;

Ausgang:

Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Führen Sie die folgende Anfrage aus, um den Inhalt des product_validity Tisch.

In 'product_validity' ('product_id', 'Manufacturing_date', 'expired_date', 'Eintrag_date') einfügen ('1234', '2022-01-03 17:01:35.000000 ',' 2022-01-31 22:01:35 ', current_timestamp ());

Führen Sie den folgenden Befehl aus, um den Inhalt des product_validity Tisch.

Wählen Sie * aus product_validity;

Ausgang:

Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Beispiel-3: Verwendung des räumlichen Datentyps

Die folgende Abfrage erstellt eine Tabelle mit drei Feldern. Der Datentyp von Ausweis Feld ist klein. Der Datentyp der Beschreibung Feld ist Text. Der Datentyp der Geo Feld ist Geometrie. Führen Sie die folgende Anfrage aus, um die zu erstellen Geo_Table Tisch.

TABLE CREATE GEO_TABLE (ID Smallint (3), Beschreibung Text, Geo -Geometrie);
Set @g = 'point (10 3)';

Führen Sie den folgenden Befehl aus, um die Struktur der Struktur zu überprüfen Geo_Table Tisch.

Beschreiben Sie Geo_Table;

Ausgang:

Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Führen Sie die folgende Anfrage aus, um einen Datensatz in die Einführung in die Geo_Table Tisch.

In Geo_Table -Werte einfügen (123, "Daten testen", ST_POINTFROMTEXT (@G));

Führen Sie die folgende Anfrage aus, um den Inhalt des Geo_Table Tisch.

Wählen Sie * aus Geo_Table;

Ausgang:

Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Beispiel-4: Verwendung des JSON-Datentyps

Die folgende Abfrage erstellt eine Tabelle von JSON -Daten. Der Datentyp der jdata Field ist JSON. Führen Sie die folgende Anfrage aus, um die zu erstellen JSONTIBLE Tisch.

TABELLE JSONTABLE (JDATA JSON) erstellen;

Führen Sie den folgenden Befehl aus, um die Struktur der Struktur zu überprüfen JSONTIBLE Tisch.

Beschreibe JSontable;

Ausgang:

Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Führen Sie die folgende Abfrage aus, um die JSON -Daten einzufügen.

In jSontable values ​​einfügen ('"id": 1209, "Name": "Mir Sabbir"');

Führen Sie die folgende Anfrage aus, um die Datensätze aus dem zu lesen JSONTIBLE Tisch.

Wählen Sie JData von JSontable aus;

Ausgang:

Nach der Ausführung des obigen Befehls wird die folgende Ausgabe angezeigt.

Abschluss:

Die am häufigsten verwendeten MySQL -Datentypen wurden in diesem Tutorial erläutert, indem mehrere Tabellen erstellt werden, um das Konzept des MySQL -Datentypen für die neuen MySQL -Benutzer zu löschen.