Comment puis-je afficher le schéma d'une table dans une base de données MySQL?
-
19-09-2019 - |
Question
A partir de la console MySQL, quelle commande affiche le schéma d'une table donnée?
La solution
describe [db_name.]table_name;
pour la sortie formatée, ou
show create table [db_name.]table_name;
pour l'instruction SQL qui peut être utilisé pour créer une table.
Autres conseils
SHOW CREATE TABLE yourTable;
ou
SHOW COLUMNS FROM yourTable;
Vous pouvez également utiliser un raccourci pour décrire comme desc
pour la description de la table.
desc [nom_base_de_donnees.] Table_name;
ou
nom_base_de_donnees utilisation;
desc table_name;
Vous pouvez également utiliser explain
pour la description de la table.
expliquer [nom_base.] Nom_table;
donne une sortie comme:
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | int(10) | NO | PRI | NULL | |
| name | varchar(20) | YES | | NULL | |
| age | int(10) | YES | | NULL | |
| sex | varchar(10) | YES | | NULL | |
| sal | int(10) | YES | | NULL | |
| location | varchar(20) | YES | | Pune | |
+----------+-------------+------+-----+---------+-------+
Peut-être que la question doit être un peu plus précis sur ce qui est ici nécessaire parce qu'il peut être lu de deux façons différentes. à savoir
- Comment puis-je obtenir la structure / définition d'une table dans une base MySQL?
- Comment puis-je obtenir le nom du schéma / base de données de ce tableau réside dans?
Compte tenu de la réponse acceptée, l'OP clairement destiné à être interprété la première manière. Pour tous ceux qui liront la question dans l'autre sens essayer
SELECT `table_schema`
FROM `information_schema`.`tables`
WHERE `table_name` = 'whatever';
SELECT COLUMN_NAME, TABLE_NAME,table_schema
FROM INFORMATION_SCHEMA.COLUMNS;