195 votes

Comment obtenir la structure de base de données MySQL via une requête

Est-il possible d'obtenir en quelque sorte la structure de base de données MySQL, ou juste une table avec une requête simple?

Ou est-il une autre manière, comment puis-je le faire?

288voto

Bill the Lizard Points 147311

Je pense que ce que vous êtes après est - DESCRIBE

DESCRIBE table;

Vous pouvez également utiliser SHOW TABLES

SHOW TABLES;

pour obtenir une liste des tables dans votre base de données.

124voto

Eemeli Kantola Points 1910

Pour obtenir l'ensemble de la structure de base de données comme un ensemble de CRÉER une TABLE des déclarations, utilisez la commande mysqldump:

mysqldump database_name --compact --no-data

Pour les tables, ajouter le nom de la table après le nom db dans le dump. Vous obtenez les mêmes résultats avec SQL et SHOW CREATE TABLE:

SHOW CREATE TABLE table;

Ou DÉCRIRE si vous préférez une colonne d'inscription:

DESCRIBE table;

47voto

Zenshai Points 2666

Jetez un oeil à l' information_schema.tables table. Il contient des métadonnées sur toutes vos tables.

exemple:

 select * from `information_schema`.`tables`
  where table_name like 'table1'

L'avantage de ce rapport à d'autres méthodes, c'est que vous pouvez facilement utiliser des requêtes comme celle ci-dessus que les sous-requêtes dans vos autres requêtes.

33voto

duckyflip Points 6895

en utilisant ceci:

SHOW CREATE TABLE `users`;

vous donnera le DDL pour cette table

DESCRIBE `users`

liste des colonnes de la table

21voto

ashish Points 21
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = 'test' AND TABLE_NAME ='products'; 

Table_schema est le nom de base de données

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X