Jak wyszukać konkretną nazwę kolumny we wszystkich tabelach w MySQL Workbench?

14

Czy w MySQL Workbench można wyszukać określoną nazwę kolumny we wszystkich tabelach?

(Pisanie ciągu w polu w prawym górnym rogu nic nie robi).

Dziękuję Ci.

Pietro
źródło

Odpowiedzi:

21

Możesz użyć INFORMATION_SCHEMAbazy danych, COLUMNSaw szczególności tabeli. Przykład użycia:

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ᵀᴹ
źródło
8

Aby rozwinąć odpowiedź @ ypercube (dostaje +1), jeśli nie wiesz, która baza danych znajduje się w tabeli, wykonaj następujące czynności:

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
źródło
3

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

  • Kliknij dowolną tabelę prawym przyciskiem myszy .
  • Kliknij lewym przyciskiem myszy „Konserwacja stołu ...” po pewnym czasie…
  • Kliknij lewym przyciskiem myszy kartę „Kolumny”.

To pokazuje sortowalną siatkę tabeli, kolumny, ...

  • Kliknij lewym przyciskiem myszy „Kolumna” w nagłówku siatki, aby posortować wszystkie nazwy kolumn, niezależnie od tabeli. Więc kolumny o tej samej nazwie razem.

Niestety ten rodzaj nie jest stabilny. Tak więc początkowo sortowanie według tabeli, następnie kolumna nie zachowuje kolejności nazw tabel w grupie identycznych nazw kolumn.

Siatka powoli się otwiera, ale szybko znajduje grupy kolumn.

Nie przeszukuje baz danych.

Andrew Dennison
źródło