Как искать определенное имя столбца во всех таблицах в MySQL Workbench?

14

В MySQL Workbench можно ли искать конкретное имя столбца во всех таблицах?

(Запись строки для поиска в поле в правом верхнем углу ничего не делает).

Спасибо.

Pietro
источник

Ответы:

21

Вы можете использовать INFORMATION_SCHEMAбазу данных и COLUMNSтаблицу в частности. Пример использования:

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ᵀᴹ
источник
8

Чтобы расширить ответ @ ypercube (он получает +1), если вы не знаете, в какой базе данных находится таблица, сделайте следующее:

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
источник
3

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

  • Щелкните правой кнопкой мыши по любой таблице.
  • Щелкните левой кнопкой мыши «Обслуживание таблицы ...» после задержки ...
  • Щелкните левой кнопкой мыши вкладку «Столбцы».

Это показывает сортируемую сетку таблицы, столбца, ...

  • Щелкните левой кнопкой мыши «Столбец» в заголовке сетки, чтобы отсортировать все имена столбцов, независимо от таблицы. Так что столбцы с одинаковыми именами вместе.

К сожалению, сорт не стабилен. Таким образом, первоначально сортировка по таблице, затем столбец не сохраняет порядок имен таблиц в группе идентичных имен столбцов.

Сетка медленно открывается, но затем быстро находит группы столбцов.

Он не ищет в базах данных.

Эндрю Деннисон
источник