MySQL: 3 Wege um Definitionen und Aufbau einer Tabelle anzuzeigen
Info von Stefan Trost | Letztes Update am 31.01.2023 | Erstellt am 01.02.2014
In MySQL gibt es verschiedene Möglichkeiten sich die Definitionen und den Aufbau einer Tabelle anzeigen zu lassen. In diesem kleinen Tutorial möchte ich die einzelnen Methoden vorstellen und miteinander vergleichen.
Dabei zeige ich die einzelnen Befehle an einer fiktiven Tabelle "tab", die aus zwei Spalten besteht. Nacheinander schauen wir uns im folgenden die SQL-Anweisungen "SHOW CREATE", "DESCRIBE" sowie "SHOW COLUMNS" für diese Tabelle an.
SHOW CREATE
Möchten wir unsere Tabelle auf einen anderen Server kopieren, ist das "SHOW CREATE"-Statement die beste Wahl. Hinter "SHOW CREATE" schreiben wir einfach den Namen unser Tabelle und können diese Anweisung ausführen.
SHOW CREATE tab
Die Ausgabe von "SHOW CREATE" ist eine SQL-Anweisung, die alle nötigen Befehle enthält, um die Tabelle wieder in gleicher Weise aufbauen zu können, wie sie bereits existiert. Allerdings enthält diese Anweisung nur den Aufbau der Tabelle mit allen Spaltennamen, Datentypen und Index-Definitionen, jedoch keine Daten.
Eine mögliche Ausgabe von "SHOW CREATE tab" könnte demnach folgendermaßen aussehen, wenn "tab" aus den Spalten "id" und "vname" besteht:
CREATE TABLE tab ( id int(11) NOT NULL AUTO_INCREMENT, vname varchar(10) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8
Dieses Ergebnis könnten wir nun genauso als MySQL-Anweisung wieder verwenden, um eine Tabelle gleicher Bauart anzulegen.
DESCRIBE
Sind wir nicht daran interessiert, den Aufbau einer Tabelle zu exportieren, da wir nur wissen möchten, aus welchen Spalten eine Tabelle besteht ohne die Tabelle neu aufbauen zu wollen, bietet sich eher das DESCRIBE-Statement an. Ein Aufruf des "DESCRIBE"-Befehls für die Tabelle "tab" sieht so aus:
DESCRIBE tab
DESCRIBE liefert uns als Ergebnis eine Tabelle mit einer Zeile für jedes Feld unserer Tabelle. Für unser Beispiel von oben würde das Ergebnis also so aussehen:
FIELD TYPE NULL KEY DEFAULT EXTRA ------------------------------------------------------------ id int(11) NO PRI NULL auto_increment vname varchar(10) NO NULL
Die Ausgabe hat 6 Spalten, die alle Informationen zu den Feldern der Tabelle enthalten. Neben dem Namen und dem Typen der Spalte finden sich in dieser tabelarischen Darstellung unter anderem Informationen zum Default-Wert der Spalte, ob die Spalte Teil eines Indizes ist (KEY) oder welche Sonderkonditionen für die Spalte gelten (hier zum Beispiel das Auto-Increment der id-Spalte).
Verglichen zur Ausgabe des "SHOW CREATE"-Befehls ist diese Art der Darstellung übersichtlicher und besser für den Menschen lesbar, kann allerdings nicht direkt zum Aufbau einer neuen Zwillingstabelle verwendet werden.
SHOW COLUMNS
Das gleiche Ergebnis, dass wir mit dem "SHOW CREATE"-Befehl erzeugen können, liefert uns auch "SHOW COLUMS". Ein Aufruf von "SHOW COLUMNS" kann so aussehen:
SHOW COLUMNS FROM tab
Im Gegensatz zu den anderen Befehlen dürfen wir bei "SHOW COLUMNS" allerdings das "FROM" nicht vergessen.
Über den Autor
Software von Stefan Trost finden Sie auf sttmedia.de. Benötigen Sie eine individuelle Software nach Ihren eigenen Wünschen? Schreiben Sie uns: sttmedia.de/kontakt
Profil anzeigen
Ähnliche Themen
MySQL: Daten aus Tabelle löschen - Unterschied zwischen TRUNCATE, DELETE und DROP
Tutorial | 0 Kommentare
Mehrere Texte gleichzeitig ersetzen
Tutorial | 0 Kommentare
SQLite: Überprüfen ob Tabelle existiert
Info | 0 Kommentare
MySQL: Neue Spalte zu einer Tabelle hinzufügen
Tutorial | 0 Kommentare
MySQL: CSV Export als auf dem Server gespeicherte Datei
Tutorial | 0 Kommentare
Delphi/Lazarus: Byte Array als String aus HEX-Werten anzeigen
Tipp | 0 Kommentare
MySQL: CSV Export als automatischer Download
Tutorial | 1 Kommentar
Wichtiger Hinweis
Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.
Jetzt mitmachen
Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.