Извлечение данных из MySQL для импорта в инструмент диаграммы - PullRequest
0 голосов
/ 21 ноября 2018

Я пытаюсь импортировать SQL для создания ERD.Я выбрал импорт из SQL и скопировал запрос администратору базы данных PhpMyAdmin для соответствующей базы данных.Кажется, что запрос извлекает информацию обо всех базах данных на моем сервере MySQL, а не просто интересующую базу данных.

Это код из мастера импорта SQL:

ВЫБОР DBMS 'MySQL', t.TABLE_SCHEMA, t.TABLE_NAME, c.COLUMN_NAME, c.ORDINAL_POSITION, c.DATA_TYPE, c.CHARACTER_MAXIMUM_LENGTH, n.CONSTRAINT_TYPE, k.REFERENCED_TABLE_SCHEMA, k.REFERENCED_TABLE_NAME, k.REFERENCED_COLUMN_NAME ОТ INFORMATION_SCHEMA.TABLES тСЛЕДУЮЩАЯ ПРИСОЕДИНЯЙСЯ ИНФОРМАЦИЯ_SCHEMA.COLUMNS c ON t.TABLE_SCHEMA = c.TABLE_SCHEMA И t.TABLE_NAME = c.TABLE_NAME СЛЕДУЮЩАЯ ОБЪЕДИНЕННАЯ ИНФОРМАЦИЯ_SCHEMA.KEY_COLUMN_USAGE k.CABLE_SCABLE_SCABLE_CABLE_SCABLE.COLUMN_NAME СЛЕВА ПРИСОЕДИНЯЙТЕСЬ К INFORMATION_SCHEMA.TABLE_CONSTRAINTS n ON k.CONSTRAINT_SCHEMA = n.CONSTRAINT_SCHEMA И k.CONSTRAINT_NAME = n.CONSTRAINT_NAME И К. TABLEt.TABLE_SCHEMA NOT IN ('INFORMATION_SCHEMA', 'mysql');

Как мне сделать так, чтобы он просто извлек 1 базу данных с именем jw-app?

1 Ответ

0 голосов
/ 22 ноября 2018

Ваш запрос заканчивается предложением WHERE, которое определяет значения в t.TABLE_SCHEMA, которые нужно исключить (т. Е. Information_schema и mysql).

WHERE t.TABLE_TYPE='BASE TABLE' 
AND t.TABLE_SCHEMA NOT 
IN('INFORMATION_SCHEMA','mysql');

Вы просто должны отменить это и указать вместо этого имя базы данных для включениялибо с

t.TABLE_SCHEMA IN('jw_app');

, либо еще проще

t.TABLE_SCHEMA = 'jw_app';
...