Types de données MySQL

Types de données MySQL
De nombreuses tables existent dans une base de données MySQL qui contient plusieurs colonnes ou champs pour stocker différents types de données. Il est très important d'obtenir des connaissances appropriées sur les types de données pris en charge de MySQL pour créer la structure de la propriété de la table de base de données. Chaque type de données de MySQL peut stocker des données de différentes tailles. Chaque type de données peut stocker les données en nombre ou en format de chaîne. La taille et les utilisations des différents types de données MySQL pour créer une table de base de données ont été décrites dans ce tutoriel.

Catégories de types de données MySQL:

Les types de données MySQL sont divisés en catégories suivantes.

  1. Données de chaîne
  2. Données numériques
  3. Données binaires de grandes objets
  4. Données de date et d'heure
  5. Données spatiales
  6. Données JSON

Les types de données liés à chaque groupe ont expliqué ci-dessous avec des exemples.

Type de données de chaîne:

Le champ de type de données de chaîne peut contenir des caractères alphabétiques et numériques pour définir une chaîne de petits et grands texte tels que le nom, l'adresse, la description, etc. Le contenu binaire, tel qu'un fichier d'image ou audio, peut être stocké dans le domaine du type de données de chaîne. Les types de données de chaîne pris en charge dans MySQL ont été illustrés ci-dessous avec la taille et la description.

Type de données de chaîne Description
Char (n) Il est utilisé pour stocker une chaîne d'un nombre fixe de caractères. Il peut contenir un maximum de 255 caractères. La valeur de l'argument définit la longueur de la chaîne. Si la valeur du champ charbon contient moins de caractère que le n valeur, alors la valeur de l'espace sera ajoutée pour les caractères restants.
Varchar (n) Il est utilisé pour stocker une chaîne du nombre variable de caractères. Il peut également contenir un maximum de 255 caractères. La valeur de l'argument définit la longueur de la chaîne. Il ne gaspille pas d'espace comme le type de données char.
Tinytext (n) Il fonctionne comme un type de données varchar et peut stocker un maximum de 255 caractères.
Texte (n) Il est utilisé pour stocker des valeurs de chaîne plus grandes contenant un maximum de 65 535 caractères.
Moyen-texte (n) Il stocke une valeur de texte plus grande que le type de données de texte qui peut contenir un maximum de 16 777 215 caractères.
LongText (n) Il stocke des valeurs de texte plus grandes que le type de données de texte moyen contenant un maximum de 4 Go ou 4 294 967 295 caractères.
Binaire (n) Il est utilisé pour stocker des caractères binaires, et la longueur de ces données est fixe. Il peut stocker un maximum de 255 caractères.
Varbinary (n) Il fonctionne comme le type de données binaires, mais sa longueur n'est pas fixe.
Enum (v1, v2, v3,…, vn) La forme complète de l'énumération est l'énumération utilisée pour sélectionner une seule valeur à partir de plusieurs valeurs. L'indice numérique est utilisé pour définir les valeurs de chaîne. Il peut avoir un maximum de 65 535 valeurs.
Set (v1, v2, v3,…, vn) Il est utilisé pour sélectionner 0 ou plus de valeurs dans la liste des valeurs. Il peut stocker un maximum de 64 valeurs.

Type de données numériques:

Le champ de type de données numériques stocke le numéro entier tel que l'identifiant, le numéro de sécurité, etc., ou le numéro fractionnaire, comme le prix, le CGPA, etc. Différents types de types de données numériques ont décrit ci-dessous.

Type de données numériques Description
Bit (n) Il est utilisé pour stocker les valeurs de bit. Le nombre de bits par valeur est défini par n ici. Il peut stocker des valeurs de 1 à 64. La valeur par défaut est 1.
Bool / booléen Il est utilisé pour stocker des valeurs vraies ou fausses. 0 La valeur est considérée comme un FAUX valeur, et tout nombre non nul est considéré comme un Vrai valeur.
Tinyint (n) Il est utilisé pour stocker une valeur entière de très petite taille. Il peut stocker des valeurs de -128 à 127 pour les entiers signés et 0 à 255 pour un entier non signé. Le n définit la longueur du nombre.
SmallInt (n) Il est utilisé pour stocker une valeur entière de petite taille. Il peut stocker des valeurs de -32768 à 32767 pour les entiers signés et 0 à 65535 pour un entier non signé. Le n définit la longueur du nombre.
Médium (n) Il est utilisé pour stocker une valeur entière de taille moyenne. Il peut stocker des valeurs de -8388608 à 8388607 pour les entiers signés et 0 à 16777215 pour un entier non signé. Le n définit la longueur du nombre.
Int (n) / entier (n) Il est utilisé pour stocker une valeur entière. Il peut stocker des valeurs de -2147483648 au 2147483647 pour les entiers signés et 0 à 4294967295 pour un entier non signé. Le n définit la longueur du nombre.
Bigint (n) Il est utilisé pour stocker une valeur entière de grande taille. Il peut stocker des valeurs de -9223372036854775808 à 9223372036854775807 pour les entiers signés et 0 à 18446744073709551615 pour un entier non signé non signé. Le n définit la longueur du nombre.
Float (n, d) Il est utilisé pour stocker des nombres fractionnaires de petite taille. Ici, n définit la longueur de tout le nombre, et d définit la longueur du nombre après le point décimal. Il nécessite 2 octets pour stocker les données, et 24 chiffres peuvent être ajoutés après le point décimal. La valeur par défaut de n est 10 et est 2.
Double (n, d) Il est utilisé pour stocker des nombres fractionnaires de grande taille. Ici, n définit la longueur de tout le nombre, et d définit la longueur du nombre après le point décimal. Il nécessite 8 octets pour stocker les données, et 53 chiffres peuvent être ajoutés après le point décimal. La valeur par défaut de n est 16 et est 4.
Décimal (n, d) Il est utilisé pour définir un numéro fractionnaire à virgule fixe qui peut stocker un grand nombre fractionné que le flotteur et le double. Ici, la valeur maximale du n peut être 65, et la valeur maximale du d peut être 30.

Type de données binaires de grands objets (blob):

Ce type de données est utilisé pour stocker la quantité variable de données binaires. Quatre types différents de types de données BLOB ont été décrits ci-dessous.

Type de données blob Description
Minou Il peut être utilisé pour stocker les données d'un maximum de 255 octets.
Blob (n) Il peut être utilisé pour stocker les données d'un maximum de 65 535 octets.
Peuple moyen Il peut être utilisé pour stocker les données d'un maximum de 16 777 215 octets.
Blob Il peut être utilisé pour stocker les données d'un maximum de 4 Go ou 4 294 967 295 octets.

Type de données de date et d'heure:

Ce type de données est utilisé pour stocker les valeurs liées à la date et au temps. Le champ de type de données de date et d'heure peut stocker les valeurs de date, heure, datetime, année et horodatage. Si des données non valides sont fournies pour la valeur du champ de la date et de l'heure, la valeur zéro sera insérée. Différents types de données de types de données de date et d'heure ont décrit ci-dessous.

Type de données de date et d'heure Description
DATE Il est utilisé pour afficher la date au format, 'yyyy-mm-dd.' Il peut stocker les valeurs de «1000-01-01» à «9999-12-31».
TEMPS Il est utilisé pour afficher l'heure du format, 'HH-MM-SS.' Il peut stocker les valeurs de '-838: 59: 59' à '838: 59: 59'.
DateTime Il est utilisé pour afficher l'heure du format, 'yyyy-mm-dd hh-mm-ss'. Il peut stocker les valeurs de '1000-01-01 00:00:00' à '9999-12-31 23:59:59'.
Année [(2 | 4)] Il stocke la valeur de l'année de 2 ou 4 chiffres. La valeur de l'année à 2 chiffres n'est pas prise en charge de la version 8 MySQL.0.
Horodatage (m) Il est utilisé pour afficher l'heure du format, 'Yyyy-mm-dd HH-MM-SS'. Il peut stocker les valeurs de '1970-01-01 00:00:01' UTC à '2038-01-19 03:14:07' UTC.

Type de données spatiales:

Ce type de type de données stocke les données géographiques et géométriques. Différents types de données spatiales ont été décrits ci-dessous.

Type de données spatiales Description
INDIQUER Il est utilisé pour stocker les valeurs des coordonnées x et y d'un point.
Multipoint Il est utilisé pour stocker une collection de plusieurs points.
POLYGONE Il est utilisé pour représenter la géométrie multi-. 0 ou plus les limites intérieures et une limite extérieure peuvent être définies par type de données de polygone.
Multiplygon Il est utilisé pour stocker une collection de plusieurs éléments de polygone.
Libellé Il est utilisé pour représenter une courbe d'une ou plusieurs valeurs de point.
Multi-linestring Il représente la géométrie multi-courbe qui contient une collection de valeurs linestriques.
GÉOMÉTRIE Il est utilisé pour stocker un point ou un agrégat de points de valeurs spatiales de tout type.
Collection de géométrie Il est utilisé pour stocker une collection de 0 valeurs de géométrie ou plus.

Type de données JSON:

Le type de données est utilisé pour stocker et accéder facilement aux documents JSON. Ce type de données est utilisé pour valider les données JSON et fournir automatiquement un espace de stockage optimal. Lorsque des données non valides sont fournies pour le champ JSON, il produira une erreur.

Conditions préalables:

Vous devez créer une table de base de données avec les données d'une base de données MySQL pour vérifier les utilisations des types de données MySQL. Ouvrez le terminal et connectez-vous avec le serveur MySQL en exécutant la commande suivante.

$ sudo mysql -u racine

Exécutez la commande suivante pour créer une base de données nommée test_db.

Créer une base de données test_db;

Exécutez la commande suivante pour sélectionner la base de données.

Utilisez test_db;

Utilisations des types de données MySQL:

Dans cette partie du tutoriel, plusieurs exemples ont montré certaines utilisations des types de données MySQL pour créer des tables de base de données.

Exemple-1: utilisation de la chaîne et du type de données numériques

La requête suivante créera une table avec cinq champs. Le type de données du produit_id Le champ est int, et la clé primaire sera auto-incrémentée. Le type de données du nom le champ est varchar. Le type de données du lester Le champ est petit. Le type de données du unité Le champ est enum. Le type de données du prix le champ est décimal. Exécutez la requête suivante pour créer le Des produits tableau.

Créer des produits de table (
Product_id int not null auto_increment,
nom varchar (45) pas null,
poids petit pas nul,
Unit Enum («Kg», «Pound», «Gram»),
prix décimal (6, 2) pas nul,
Clé primaire (product_id));

Exécutez la commande suivante pour vérifier la structure du Des produits tableau.

Décrire les produits;

Sortir:


La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Exécutez la requête suivante pour lire le contenu du Des produits tableau.

Insérer dans les «produits» («Product_id», «nom», «poids», «unité», «prix») Vaux (null, «gâteau», «500», «livre», «199.99 ');

Exécutez la commande suivante pour lire le contenu du Des produits tableau.

Sélectionner * dans les produits;

Sortir:

La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Exemple-2: utilisation du type de données de date et d'heure

La requête suivante créera une table avec quatre champs. Le type de données de produit_id Le champ est petit et clé primaire. Le type de données du date de fabrication Le champ est DateTime. Le type de données du date d'expiration Le champ est DateTime. Le type de données du Date d'entrée le champ est horodat. Exécutez la requête suivante pour créer le Product_validité tableau.

Créer une table Product_validité (
Product_id smallInt (4),
manufacturing_date datetime pas nul,
expired_date datetime pas nul,
entrée_date d'horodatage,
Clé primaire (product_id));

Exécutez la commande suivante pour vérifier la structure du Product_validité tableau.

Décrire Product_validité;

Sortir:

La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Exécutez la requête suivante pour lire le contenu du Product_validité tableau.

Insérer dans 'Product_validity' ('product_id', 'manufacturing_date', 'expired_date', 'entry_date') valeurs ('1234', '2022-01-03 17:01:35.000000 ',' 2022-01-31 22:01:35 ', current_timestamp ());

Exécutez la commande suivante pour lire le contenu du Product_validité tableau.

SELECT * FROM product_validité;

Sortir:

La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Exemple-3: utilisation du type de données spatiales

La requête suivante créera une table avec trois champs. Le type de données de identifiant Le champ est petit. Le type de données du description le champ est du texte. Le type de données du géo Le champ est la géométrie. Exécutez la requête suivante pour créer le GEO_TABLE tableau.

Créer la table GEO_TABLE (id smallInt (3), description texte, géométrie géo);
Set @g = 'point (10 3)';

Exécutez la commande suivante pour vérifier la structure du GEO_TABLE tableau.

Décrire GEO_TABLE;

Sortir:

La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Exécutez la requête suivante pour insérer un record dans le GEO_TABLE tableau.

Insérer dans GEO_TABLE VALEURS (123, "Testing Data", ST_PointFromText (@g));

Exécutez la requête suivante pour lire le contenu du GEO_TABLE tableau.

SELECT * FROM GEO_TABLE;

Sortir:

La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Exemple-4: utilisation du type de données JSON

La requête suivante créera un tableau des données JSON. Le type de données du jdata Le champ est JSON. Exécutez la requête suivante pour créer le jsontable tableau.

Créer une table jSontable (JDATA JSON);

Exécutez la commande suivante pour vérifier la structure du jsontable tableau.

Décrire jSontable;

Sortir:

La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Exécutez la requête suivante pour insérer les données JSON.

Insérer dans JSontable Values ​​('"ID": 1209, "Name": "Mir Sabbir"');

Exécutez la requête suivante pour lire les enregistrements du jsontable tableau.

Sélectionnez JDATA dans JSontable;

Sortir:

La sortie suivante apparaîtra après avoir exécuté la commande ci-dessus.

Conclusion:

Les types de données MySQL les plus couramment utilisés ont été expliqués dans ce tutoriel en créant plusieurs tables pour effacer le concept MySQL Data Types pour les nouveaux utilisateurs de MySQL.