Ist es möglich, eine Struktur der MySQL-Datenbank oder nur eine Tabelle mit einer einfachen Abfrage zu erhalten?
Oder gibt es einen anderen Weg, wie kann ich das machen?
Ich denke, dass Sie danach suchen DESCRIBE
DESCRIBE table;
Sie können auch verwenden SHOW TABLES
SHOW TABLES;
um eine Liste der Tabellen in Ihrer Datenbank zu erhalten.
SHOW TABLES FROM database_name
Verwenden Sie mysqldump, um die gesamte Datenbankstruktur als Satz von CREATE TABLE- Anweisungen abzurufen :
Fügen Sie für einzelne Tabellen den Tabellennamen nach dem Datenbanknamen in mysqldump hinzu. Mit SQL und SHOW CREATE TABLE erhalten Sie dieselben Ergebnisse :
Oder BESCHREIBEN Sie, wenn Sie eine Spaltenauflistung bevorzugen:
quelle
show create table
war genau das, wonach ich gesucht habe. Vielen Dank!Schauen Sie sich das an
INFORMATION_SCHEMA
.TABLES
Tabelle. Es enthält Metadaten zu allen Ihren Tabellen.Beispiel:
Dies hat gegenüber anderen Methoden den Vorteil, dass Sie Abfragen wie die oben beschriebene problemlos als Unterabfragen in Ihren anderen Abfragen verwenden können.
quelle
information_schema
.columns
(Verwenden voncolumns
Tabelle anstelle vontables
? Weiltables
keine Informationen darüber enthalten, welche Typen die Tabellenspalten sindmit diesem:
gibt Ihnen die DDL für diese Tabelle
listet die Spalten in dieser Tabelle auf
quelle
Wo
Table_schema
ist der Datenbankname?quelle
SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_COMMENT FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'my_db_name' AND TABLE_NAME ='users';
Das ist die SHOW CREATE TABLE- Abfrage. Sie können auch die SCHEMA-TABELLEN abfragen .
quelle
Eine Variation der ersten Antwort, die ich nützlich fand
Öffnen Sie Ihre Eingabeaufforderung und geben Sie ein (Sie müssen nicht bei Ihrem MySQL-Server angemeldet sein).
quelle
AUSWÄHLEN
COLUMN_NAME
VONINFORMATION_SCHEMA
.COLUMNS
WHERETABLE_SCHEMA
= 'bodb' ANDTABLE_NAME
= 'abc';funktioniert zum Abrufen aller Spaltennamen
quelle
Im folgenden Beispiel
Eine andere Möglichkeit ist die Verwendung von SHOW-COLUMNS: 5.5 (auch verfügbar für
5.5>
)Und die Ausgabe:
Man kann auch mysqlshow-client (auch verfügbar für
5.5>
) wie folgt verwenden:Und die Ausgabe:
quelle
Heutzutage verwenden die Leute
DESC
stattDESCRIPTION
. Beispielsweise:-DESC users;
quelle