2
A
回答
4
这里有一个查询要做到这一点使用information_schema
,改编自this blog post:
SELECT FK_Table = FK.TABLE_NAME
, FK_Column = CU.COLUMN_NAME
, PK_Table = PK.TABLE_NAME
, PK_Column = PT.COLUMN_NAME
, Constraint_Name = C.CONSTRAINT_NAME
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS C
JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS FK
ON C.CONSTRAINT_NAME = FK.CONSTRAINT_NAME
JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS PK
ON C.UNIQUE_CONSTRAINT_NAME = PK.CONSTRAINT_NAME
JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE CU
ON C.CONSTRAINT_NAME = CU.CONSTRAINT_NAME
JOIN (
SELECT i1.TABLE_NAME, i2.COLUMN_NAME
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS i1
JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE i2
ON i1.CONSTRAINT_NAME = i2.CONSTRAINT_NAME
WHERE i1.CONSTRAINT_TYPE = 'PRIMARY KEY'
) PT
ON PT.TABLE_NAME = PK.TABLE_NAME
WHERE PK.TABLE_NAME = 'PrimaryKeyTable'
相关问题
- 1. 更改在MySQL中具有外键约束的表主键
- 2. 查找所有具有外键的表
- 3. 查找表之间的外键约束列信息
- 4. 无法为两列创建具有外键约束的表?
- 5. 添加外键外键约束表
- 6. 将外键约束添加到包含现有数据的表的主键列
- 7. 在表中添加外键约束vs添加外键约束的变更表
- 8. 如何获得没有外键约束的列表?
- 9. 删除不影响外键约束到其他表的主键
- 10. 具有包含2列的主键的表的外键引用
- 11. 删除Mysql表列与外键约束
- 12. 如果我们对另一个表中的列有外键约束,如何截断主键表?
- 13. 如何构建具有复合主键的表的外键?
- 14. 具有相同唯一列的表的主键或外键
- 15. 查找表上的SQL主键或唯一约束?
- 16. 参照表没有外键约束
- 17. Knex截断带外键约束的表
- 18. 删除复制表的外键约束
- 19. 空表中的外键约束失败
- 20. 从具有外键约束的MySQL表中删除
- 21. 从两个具有外键约束的表中删除
- 22. 将行添加到具有外键约束的表[MySQL]
- 23. 如何删除所有表中的所有外键约束?
- 24. 如何通过SQLAlchemy在现有表列添加外键约束?
- 25. 在ms-access中获取表的外键约束列表?
- 26. 查看Oracle有关主键/外键约束的元数据
- 27. Android - 具有唯一键和外键约束的Sqlite查询
- 28. 删除具有外键约束的行
- 29. 表***中的列与现有主键或UNIQUE约束不匹配
- 30. 如何为没有外键约束的oracle表生成ER图