6
votes

MySQL Afficher le dadidiction des tables

J'aimerais afficher le dadidicomanie pour des tables entières dans la base de données.

SHOW COLUMNS
FROM `MyDataBase`.`MyTables` 
WHERE IN ( SELECT TABLE_NAME 
           FROM information_schema.TABLES 
           WHERE TABLE_SCHEMA = 'MyDataBase'
);


0 commentaires

7 Réponses :


4
votes

Est-ce ce que vous voulez: XXX


0 commentaires

2
votes

de manuel MySQL 5.7

De nombreuses sections indiquent quelle instruction montre équivaut à un SELECT qui récupère des informations à partir d'informations_schema. Pour les déclarations d'affichage qui affichent des informations pour la base de données par défaut Si vous omettez une clause de db_name, vous pouvez souvent sélectionner des informations pour la base de données par défaut en ajoutant une condition de schéma et table_schema = schema () à la clause d'une requête qui récupère des informations d'une information_schema Tableau.


0 commentaires

1
votes
describe table_name;
Retrieving information from INFORMATION_SCHEMA, but need DBA privilege.

0 commentaires

1
votes

Habituellement, je préfère prendre cela avec plusieurs Desc . Je ressens Afficher les colonnes est un peu plus lent que descendre table_name .

Donc, si vous souhaitez obtenir toutes les colonnes dans certaines bases de données

  1. LOOP THRU Afficher les tables de DB_NAME
  2. boucle à travers toutes les tables comme Desc table_name

    de la même manière, indice d'afficher est plus lent par rapport à Afficher créer une table si vous voulez simplement voir les index sur une table


0 commentaires

8
votes

Voici ce que j'utilise pour générer un dictionnaire de données lorsque je dois:

SELECT t.table_schema AS db_name,
       t.table_name,
       (CASE WHEN t.table_type = 'BASE TABLE' THEN 'table'
             WHEN t.table_type = 'VIEW' THEN 'view'
             ELSE t.table_type
        END) AS table_type,
        c.column_name,
        c.column_type,
        c.column_default,
        c.column_key,
        c.is_nullable,
        c.extra,
        c.column_comment
FROM information_schema.tables AS t
INNER JOIN information_schema.columns AS c
ON t.table_name = c.table_name
AND t.table_schema = c.table_schema
WHERE t.table_type IN ('base table', 'view')
AND t.table_schema LIKE '%'
ORDER BY t.table_schema,
         t.table_name,
         c.ordinal_position


0 commentaires

0
votes

La syntaxe la plus courte est la suivante: xxx

Syntaxe complète de spectacle pour les colonnes: xxx


0 commentaires

0
votes

J'aime celui-ci, C'est simple avec des informations élémentaires.

SELECT
    table_name,
    column_name,
    column_type,
    is_nullable,
    column_comment 
FROM
    information_schema.COLUMNS 
WHERE
    table_schema = 'YOUR_SCHEMA_NAME' 
ORDER BY
    table_name,
    ordinal_position ASC;


0 commentaires