Maison  >  Article  >  base de données  >  Quelle est la méthode pour afficher la structure des tables dans MySQL

Quelle est la méthode pour afficher la structure des tables dans MySQL

PHPz
PHPzavant
2023-05-31 19:45:313135parcourir

mysql view table structure

1. show create table

show create table 表名称

Cette instruction peut être pensée à chaque fois. La sémantique est facile à retenir. Vous pouvez visualiser directement l'instruction de création de table, mais ce n'est pas pratique pour le traitement du code.

2. desc

desc 表名称

Cette instruction est simple et facile à utiliser, et permet d'obtenir les champs les plus importants dans les COLONNES : nom, type, s'il est vide, clé, valeur par défaut et informations supplémentaires. Mais je n'arrive pas à avoir les commentaires du terrain.

3. information_schema.COLUMNS

select * from information_schema.COLUMNS where TABLE_SCHEMA = '库名称' and TABLE_NAME = '表名称'

Comparé à show create table, il est relativement simple et contient des informations complètes. Vous pouvez interroger le nom, le type, la clé, les autorisations, les commentaires et d'autres informations sur les champs. Afin d'obtenir le nom du champ, je l'utilise comme méthode pour obtenir la structure de la table dans mon script.

Pièce jointe : champ et significations information_schema.COLUMNS

Noms et significations des champs

  • TABLE_CATALOGType de table (vous ne comprenez pas à quoi ça sert ?)TABLE_CATALOG表类型(没搞懂干啥用?)

  • TABLE_SCHEMA所属库名称

  • TABLE_NAME表名称

  • COLUMN_NAME字段名称

  • ORDINAL_POSITION位置序号

  • COLUMN_DEFAULT默认值

  • IS_NULLABLE是否可为空

  • DATA_TYPE数据类型

  • CHARACTER_MAXIMUM_LENGTH字符串最大长度(数值类型为空)

  • CHARACTER_OCTET_LENGTH字符串最大存储长度(一般与上一字段相同)

  • NUMERIC_PRECISION数值精度(非数值类型为空)

  • NUMERIC_SCALE数值小数位数(非数值类型为空)

  • DATETIME_PRECISION日期精度

  • CHARACTER_SET_NAME编码方式

  • COLLATION_NAME排序方式

  • COLUMN_TYPE字段类型

  • COLUMN_KEY字段涉及的key(主键、唯一键等)

  • EXTRA其他(如 auto_increment)

  • PRIVILEGES权限

  • COLUMN_COMMENT字段注释

  • GENERATION_EXPRESSION

TABLE_SCHEMA Nom de la bibliothèque à laquelle il appartient<h3></h3> <h4></h4> <code>TABLE_NAMENom de la table

COLUMN_NAMENom du champ🎜🎜🎜🎜ORDINAL_POSITION code>Numéro de position🎜🎜 🎜🎜<code>COLUMN_DEFAULTValeur par défaut🎜🎜🎜🎜IS_NULLABLE Si elle peut être nulle🎜🎜🎜🎜DATA_TYPEType de données🎜 🎜🎜🎜CHARACTER_MAXIMUM_LENGTH Longueur maximale de chaîne (le type numérique est vide)🎜🎜🎜🎜CHARACTER_OCTET_LENGTHLongueur maximale de stockage de chaîne (généralement la même que le champ précédent)🎜🎜🎜 🎜NUMERIC_PRECISIONPrécision numérique (Nulable pour les types non numériques) 🎜🎜🎜🎜NUMERIC_SCALE Décimales numériques (Nulle pour les types non numériques) 🎜🎜🎜🎜DATETIME_PRECISION Précision de la date🎜🎜🎜 🎜CHARACTER_SET_NAMEMéthode d'encodage🎜🎜🎜🎜COLLATION_NAMEMéthode de tri🎜🎜🎜🎜COLUMN_TYPEType de champ🎜🎜 🎜🎜COLUMN_KEYClés impliquées dans les champs (clé primaire, clé unique, etc.)🎜🎜🎜🎜EXTRAAutres (comme auto_increment)🎜🎜🎜🎜PRIVILEGES Autorisations🎜🎜🎜🎜COLUMN_COMMENT Commentaires sur le terrain🎜🎜🎜🎜GENERATION_EXPRESSION représente des expressions (je ne comprends pas, l'héritage de table MySQL peut-il ?)🎜🎜🎜🎜 Obtenez toutes les structures et notes de table🎜🎜Exportez tout en fonction du nom de la bibliothèque Informations sur la table🎜
SELECT
    *
FROM
    information_schema.`TABLES`
WHERE
    TABLE_SCHEMA = &#39;db_name&#39;
🎜Exportez tous les noms de table et notes de table en fonction du nom de la bibliothèque🎜
SELECT
    TABLE_NAME,
    TABLE_COMMENT
FROM
    information_schema.`TABLES`
WHERE
    TABLE_SCHEMA = &#39;db_name&#39;;
🎜mysql récupère toutes les tables et structures de table de la bibliothèque entière🎜
SELECT
    TABLE_SCHEMA AS &#39;库名&#39;,
    TABLE_NAME AS &#39;表名&#39;,
    COLUMN_NAME AS &#39;列名&#39;,
    ORDINAL_POSITION AS &#39;列的排列顺序&#39;,
    COLUMN_DEFAULT AS &#39;默认值&#39;,
    IS_NULLABLE AS &#39;是否为空&#39;,
    DATA_TYPE AS &#39;数据类型&#39;,
    CHARACTER_MAXIMUM_LENGTH AS &#39;字符最大长度&#39;,
    NUMERIC_PRECISION AS &#39;数值精度(最大位数)&#39;,
    NUMERIC_SCALE AS &#39;小数精度&#39;,
    COLUMN_TYPE AS &#39;列类型&#39;,
    COLUMN_KEY &#39;KEY&#39;,
    EXTRA AS &#39;额外说明&#39;,
    COLUMN_COMMENT AS &#39;注释&#39;
FROM
    information_schema.`COLUMNS`
WHERE
    TABLE_SCHEMA = &#39;db_name&#39;
ORDER BY
    TABLE_NAME,
    ORDINAL_POSITION;

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