recherche
Maisonbase de donnéestutoriel mysqlL'analyse la plus complète : les types de champs MySQL

Cet article vous apporte des connaissances pertinentes sur les types de champs MySQL et fait un résumé. J'espère qu'il sera utile à tout le monde.

L'analyse la plus complète : les types de champs MySQL

Préface :

Pour comprendre une base de données, nous devons comprendre les types de données qu'elle prend en charge. MySQL prend en charge un grand nombre de types de champs, dont beaucoup sont couramment utilisés. Nous avons également parlé de l'utilisation des types int et varchar dans les articles précédents, mais nous n'avons jamais entièrement parlé des types de champs. Dans cet article, nous couvrirons tous les types de champs et parlerons de l'utilisation des types de champs courants.

Les types de champs couramment utilisés peuvent être grossièrement divisés en trois catégories : type numérique, type de chaîne et type de date et d'heure. Présentons-les dans l'ordre en fonction des catégories.

1. Type numérique

Le type numérique peut être divisé en trois sous-catégories : type entier, type à virgule flottante et type à virgule fixe.

Les types entiers sont principalement utilisés pour stocker des valeurs entières. Il existe principalement les types de champs suivants :

Lanalyse la plus complète : les types de champs MySQL

Les types entiers sont souvent utilisés, tels que tinyint, int, bigint. La valeur par défaut est signée. Si vous avez uniquement besoin de stocker des valeurs non signées, vous pouvez ajouter l'attribut non signé.

Le M dans int(M) représente la largeur d'affichage maximale. Cela ne signifie pas que int(1) ne peut pas stocker la valeur 10. Quel que soit le nombre de caractères définis pour la largeur d'affichage, int occupe toujours 4 octets, c'est-à-dire , int (5) La plage de stockage est la même que int(10).

Plus les octets de stockage sont petits, plus l'espace occupé est petit. Par conséquent, conformément au principe de minimisation du stockage, nous devrions essayer de choisir le type entier approprié. Par exemple, tinyint peut être utilisé pour stocker certaines valeurs de statut ou l'âge des personnes pour les colonnes de clé primaire, il n'y a pas de nombres négatifs. Il est recommandé d'utiliser int unsigned ou bigint unsigned pour estimer le nombre de champs. La valeur dépassera 4,2 milliards, en utilisant le type bigint.

Les types à virgule flottante incluent principalement float et double. Les types à virgule flottante stockent des valeurs approximatives dans la base de données, telles que float(6,3). Si vous insérez un nombre 123.45678, le nombre réel stocké dans la base de données est 123.457, mais. le nombre total Il dépend également de la situation réelle, c'est-à-dire 6 chiffres, et la partie entière maximale est de 3 chiffres. float et double ne sont pas couramment utilisés.

Lanalyse la plus complète : les types de champs MySQL

Il existe un type de champ à virgule fixe : DECIMAL, qui est principalement utilisé pour stocker des décimales avec des exigences de précision.

Lanalyse la plus complète : les types de champs MySQL

DECIMAL a été introduit à partir de MySQL 5.1 et la syntaxe de déclaration de colonne est DECIMAL(M,D). NUMERIC est synonyme de DECIMAL Si le type de champ est défini comme NUMERIC, il sera automatiquement converti en DECIMAL.

Pour la syntaxe de déclaration DECIMAL(M,D), la plage de valeurs de l'argument est la suivante :

  • M est le nombre maximum de chiffres (précision), allant de 1 à 65. Ne peut pas être spécifié, la valeur par défaut est 10.
  • D est le nombre de chiffres à droite de la virgule décimale (places décimales). La plage est comprise entre 0 et 30 et ne peut pas être supérieure à M. Il n'est pas nécessaire de la spécifier. La valeur par défaut est 0.

Par exemple, le champ salaire DECIMAL(5,2) est capable de stocker n'importe quelle valeur avec cinq chiffres et deux décimales, donc la plage de valeurs pouvant être stockée dans la colonne salaire est de -999,99 à 999,99. .

2. Type de chaîne

Le type de chaîne est également souvent utilisé. Les types couramment utilisés sont les suivants :

Lanalyse la plus complète : les types de champs MySQL

Parmi eux, char et varchar sont les plus couramment utilisés. Le type char est de longueur fixe et MySQL alloue toujours suffisamment d'espace en fonction de la longueur de chaîne définie. Lorsque les valeurs de caractères sont enregistrées, elles sont complétées vers la droite avec des espaces de la longueur spécifiée, et lorsque les valeurs de caractères sont récupérées, les espaces de fin sont supprimés. Le type varchar est utilisé pour stocker des chaînes de longueur variable. Lors du stockage, si les caractères n'atteignent pas le nombre de chiffres défini, aucun espace ne sera ajouté à la fin. Le M dans

char(M) et varchar(M) représente le nombre maximum de caractères enregistrés. Une seule lettre, un chiffre, un chinois, etc. occupent tous un caractère. char convient au stockage de chaînes très courtes ou lorsque toutes les valeurs sont proches de la même longueur. Par exemple, char est idéal pour stocker la valeur MD5 d'un mot de passe car il s'agit d'une valeur de longueur fixe. Pour les situations où la chaîne est très longue ou les chaînes à stocker sont de longueurs différentes, varchar est plus adapté.

Lors de la définition de la longueur maximale d'un champ, nous devons l'attribuer selon les besoins, faire une estimation à l'avance et essayer de ne pas utiliser le type texte si le type varchar peut être utilisé. À moins qu’il ne soit nécessaire de stocker des données textuelles longues, envisagez d’utiliser le type texte.

Le type BLOB est principalement utilisé pour stocker de gros objets binaires, tels que des images, des fichiers audio et vidéo. Rarement utilisé dans la vie quotidienne, vous pouvez envisager de l'utiliser lors du stockage de chaînes binaires.

3. Types de date et d'heure

Les types de date et d'heure pris en charge par MySQL sont YEAR, TIME, DATE, DATETIME, TIMESTAMP La comparaison de plusieurs types est la suivante :

. Lanalyse la plus complète : les types de champs MySQL

En ce qui concerne la sélection du type de champ de date et d'heure, sélectionnez simplement le type approprié en fonction des exigences de stockage.

Le choix entre les types DATETIME et TIMESTAMP peut être basé sur les exigences de stockage. Par exemple, si une plage de stockage plus large est requise, il est recommandé d'utiliser DATETIME. Si vous stockez uniquement l'horodatage actuel, vous pouvez utiliser le type TIMESTAMP. Cependant, il convient de noter que les données du champ TIMESTAMP changeront avec le fuseau horaire du système, mais pas les données du champ DATETIME. En général, DATETIME est plus largement utilisé.

Résumé :

Cet article présente principalement les types de champs couramment utilisés dans MySQL. Les types de champs couramment utilisés sont essentiellement ici. Il est résumé comme suit avec une carte mentale :

Lanalyse la plus complète : les types de champs MySQL

Apprentissage recommandé : vidéo mysql. tutoriel

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer
Quels sont les différents moteurs de stockage disponibles dans MySQL?Quels sont les différents moteurs de stockage disponibles dans MySQL?Apr 26, 2025 am 12:27 AM

MySQLoffersVariousStorageEngines, chacune, chacun desCasses: 1) InnodbisidealForApplications newedingacidcompenciance and highcurrency, soutenant les transactions et manqueurs

Quelles sont les vulnérabilités de sécurité communes dans MySQL?Quelles sont les vulnérabilités de sécurité communes dans MySQL?Apr 26, 2025 am 12:27 AM

Les vulnérabilités de sécurité courantes dans MySQL incluent l'injection SQL, les mots de passe faibles, la configuration d'autorisation incorrecte et les logiciels unpudés. 1. L'injection SQL peut être évitée en utilisant des instructions de prétraitement. 2. Les mots de passe faibles peuvent être évités en utilisant de force des stratégies de mot de passe solides. 3. Une mauvaise configuration d'autorisation peut être résolue par examen régulier et ajustement des autorisations utilisateur. 4. Les logiciels unpus peuvent être corrigés en vérifiant et mise à jour régulièrement la version MySQL.

Comment pouvez-vous identifier les requêtes lentes dans MySQL?Comment pouvez-vous identifier les requêtes lentes dans MySQL?Apr 26, 2025 am 12:15 AM

L'identification des requêtes lentes dans MySQL peut être réalisée en activant les journaux de requête lents et en définissant des seuils. 1. Activer les journaux de requête lents et définir les seuils. 2. Afficher et analyser les fichiers journaux de requête lente et utiliser des outils tels que MySqlDumpSlow ou Pt-Query-digest pour une analyse approfondie. 3. Optimisation des requêtes lentes peut être réalisée grâce à l'optimisation de l'index, à la réécriture de la requête et à l'évitement de l'utilisation de Select *.

Comment pouvez-vous surveiller la santé et les performances de MySQL Server?Comment pouvez-vous surveiller la santé et les performances de MySQL Server?Apr 26, 2025 am 12:15 AM

Pour surveiller la santé et les performances des serveurs MySQL, vous devez prêter attention à la santé du système, aux mesures de performance et à l'exécution des requêtes. 1) Surveiller la santé du système: utilisez les commandes TOP, HTOP ou ShowGlobalStatus pour afficher les activités du CPU, de la mémoire, des E / S de disque et du réseau. 2) Suivre les indicateurs de performance: surveiller les indicateurs clés tels que le numéro de requête par seconde, le temps de requête moyen et le taux de réussite du cache. 3) Assurer l'optimisation de l'exécution des requêtes: activer les journaux de requête lents, enregistrer et optimiser les requêtes dont le temps d'exécution dépasse le seuil défini.

Comparez et contrastez MySQL et Mariadb.Comparez et contrastez MySQL et Mariadb.Apr 26, 2025 am 12:08 AM

La principale différence entre MySQL et MARIADB est les performances, les fonctionnalités et la licence: 1. MySQL est développé par Oracle, et MariADB est sa fourche. 2. MariaDB peut mieux fonctionner dans des environnements à haute charge. 3.MariaDB fournit plus de moteurs et de fonctions de stockage. 4.MySQL adopte une double licence et MariaDB est entièrement open source. L'infrastructure existante, les exigences de performance, les exigences fonctionnelles et les coûts de licence doivent être pris en compte lors du choix.

Comment les licences de MySQL se comparent-elles aux autres systèmes de base de données?Comment les licences de MySQL se comparent-elles aux autres systèmes de base de données?Apr 25, 2025 am 12:26 AM

MySQL utilise une licence GPL. 1) La licence GPL permet l'utilisation, la modification et la distribution gratuites de MySQL, mais la distribution modifiée doit se conformer à GPL. 2) Les licences commerciales peuvent éviter les modifications publiques et conviennent aux applications commerciales qui nécessitent de la confidentialité.

Quand choisissez-vous InNODB sur Myisam, et vice versa?Quand choisissez-vous InNODB sur Myisam, et vice versa?Apr 25, 2025 am 12:22 AM

Les situations lors du choix d'innodb au lieu de Myisam incluent: 1) le support de transaction, 2) un environnement de concurrence élevé, 3) une cohérence élevée des données; Inversement, la situation où le choix de Myisam comprend: 1) la lecture principalement des opérations, 2) Aucun support de transaction n'est requis. INNODB convient aux applications qui nécessitent une cohérence élevée des données et un traitement des transactions, telles que les plates-formes de commerce électronique, tandis que Myisam convient aux applications en lecture et sans transaction telles que les systèmes de blog.

Expliquez le but des clés étrangères dans MySQL.Expliquez le but des clés étrangères dans MySQL.Apr 25, 2025 am 12:17 AM

Dans MySQL, la fonction des clés étrangères est d'établir la relation entre les tables et d'assurer la cohérence et l'intégrité des données. Les clés étrangères maintiennent l'efficacité des données grâce à des contrôles d'intégrité de référence et aux opérations en cascade. Faites attention à l'optimisation des performances et évitez les erreurs courantes lorsque vous les utilisez.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Version Mac de WebStorm

Version Mac de WebStorm

Outils de développement JavaScript utiles

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Version crackée d'EditPlus en chinois

Version crackée d'EditPlus en chinois

Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

DVWA

DVWA

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

SublimeText3 version anglaise

SublimeText3 version anglaise

Recommandé : version Win, prend en charge les invites de code !