我将列出 mysql 中除主键之外的表的所有列。 注意:操作是自动的,所以我不知道字段的名称。 你能帮我做这个查询吗?
最佳答案
如果您要使用任何长度的数据库,那么这是值得做一些研究的事情。
到目前为止,我使用过的所有 DBMS 都有一种查看约束、列和表信息的方法。 INFORMATION_SCHEMA 中可能包含用于 MySQL 的可以帮助您完成您想要的操作的内容:
TABLE_CONSTRAINTS对此的 MySQL 引用是 here .
SELECT table_name, constraint_name, constraint_type FROM INFORMATION_SCHEMA.table_constraints;
SELECT column_name FROM INFORMATION_SCHEMA.columns;
你应该能够做这样的事情来得到你想要的:
SELECT INFORMATION_SCHEMA.key_column_usage.column_name
FROM INFORMATION_SCHEMA.key_column_usage
JOIN INFORMATION_SCHEMA.table_constraints
ON INFORMATION_SCHEMA.key_column_usage.column_name = INFORMATION_SCHEMA.table_constraints.column_name
WHERE INFORMATION_SCHEMA.table_constraints.constraint_type <> 'PRIMARY KEY'
这基本上应该是您所需要的。当需要获取有关架构的信息时,此类 View /表可能是您最好的 friend 。
我希望这些信息对您有所帮助。
关于mysql - 如何在mysql中选择没有主键的所有列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26550801/