Wie kann man in allen Tabellen von MySQL Workbench nach einem bestimmten Spaltennamen suchen?

14

Kann in MySQL Workbench in allen Tabellen nach einem bestimmten Spaltennamen gesucht werden?

(Das Schreiben der zu suchenden Zeichenfolge in das Feld oben rechts bewirkt nichts.)

Vielen Dank.

Pietro
quelle

Antworten:

21

Sie können insbesondere die INFORMATION_SCHEMADatenbank und die COLUMNSTabelle verwenden. Anwendungsbeispiel:

SELECT 
    table_name, 
    column_name, 
    data_type,
    ordinal_position

FROM  INFORMATION_SCHEMA.COLUMNS 

WHERE table_schema = 'myDatabase'     --- the database you want to search 
  AND column_name = 'name' ;          --- or: column_name LIKE '%name%' 
ypercubeᵀᴹ
quelle
8

Um die Antwort von @ ypercube zu erweitern (Er erhält +1), wenn Sie nicht wissen, in welcher Datenbank sich die Tabelle befindet, gehen Sie wie folgt vor :

SELECT 
    table_schema,
    table_name, 
    column_name, 
    data_type,
    ordinal_position

FROM  INFORMATION_SCHEMA.COLUMNS 

WHERE column_name = 'name' ;          --- or: column_name LIKE '%name%' 
RolandoMySQLDBA
quelle
3

In MySQL Workbench (v6.3) (Windows):

  • Klicken Sie mit der rechten Maustaste auf eine beliebige Tabelle.
  • Klicken Sie nach einer Verzögerung mit der linken Maustaste auf "Tabellenpflege ...".
  • Klicken Sie mit der linken Maustaste auf die Registerkarte "Spalten".

Dies zeigt ein sortierbares Raster aus Tabelle, Spalte, ...

  • Klicken Sie im Tabellenkopf mit der linken Maustaste auf "Spalte", um alle Spaltennamen unabhängig von der Tabelle zu sortieren. Also gleichnamige Spalten zusammen.

Leider ist die Sorte nicht stabil. Wenn Sie also zunächst nach Tabelle sortieren, behält die Spalte die Reihenfolge der Tabellennamen innerhalb einer Gruppe identischer Spaltennamen nicht bei.

Das Gitter öffnet sich langsam, aber es findet schnell Spaltengruppen.

Es wird nicht datenbankübergreifend gesucht.

Andrew Dennison
quelle