我正在尝试导入sql来创建erd。我选择了import from sql并将查询复制到相关数据库的phpmyadmin数据库管理员。这个查询似乎提取了mysql服务器中所有数据库的信息,而不仅仅是感兴趣的数据库。
以下是导入sql向导中的代码:
SELECT 'mysql' dbms,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
FROM INFORMATION_SCHEMA.TABLES t
LEFT JOIN INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_SCHEMA=c.TABLE_SCHEMA
AND t.TABLE_NAME=c.TABLE_NAME
LEFT JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE k ON c.TABLE_SCHEMA=k.TABLE_SCHEMA
AND c.TABLE_NAME=k.TABLE_NAME
AND c.COLUMN_NAME=k.COLUMN_NAME
LEFT JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS n ON k.CONSTRAINT_SCHEMA=n.CONSTRAINT_SCHEMA
AND k.CONSTRAINT_NAME=n.CONSTRAINT_NAME
AND k.TABLE_SCHEMA=n.TABLE_SCHEMA
AND k.TABLE_NAME=n.TABLE_NAME
WHERE t.TABLE_TYPE='BASE TABLE'
AND t.TABLE_SCHEMA NOT IN('INFORMATION_SCHEMA','mysql');
如何使它只提取一个名为 jw-app
?
1条答案
按热度按时间5sxhfpxr1#
您的查询以where子句结束,该子句定义了t.table\u schema中要排除的值(即information\u schema和mysql)。
您只需将其反转并指定要包含的数据库名称,或者
或者更简单