首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Mysql数据库中找到所有具有(外键和主键)约束的字段的最佳方法是什么?

在Mysql数据库中找到所有具有(外键和主键)约束的字段的最佳方法是什么?
EN

Database Administration用户
提问于 2015-11-07 20:33:36
回答 1查看 73关注 0票数 1

我有一个mysql数据库,它有250个表。我想运行一个查询来检索: tableName;FieldName;ConstaintName (主键或外键)。

我可以使用information_schema.TABLE_CONSTRAINTS检索constarint类型,但是对于内部连接,我不知道应该使用什么。

完成这项任务的最佳方法是什么?

编辑:非约束名称。应该是CONSTRAINT_TYPE而不是ConstaintName。所以我们只能看到(主键或外键)。

EN

回答 1

Database Administration用户

回答已采纳

发布于 2015-11-07 23:31:44

您可以使用信息_模式键_立柱_用法表。

代码语言:javascript
复制
SELECT
table_name AS TableName,
column_name AS ColumnName,
Constraint_name as ConstraintName
FROM
information_schema.key_column_usage
WHERE table_schema = 'database_name'

基于OP要求的

更新代码:

代码语言:javascript
复制
SELECT DISTINCT(TC.table_name) AS TableName, KC.column_name as ColumnName,
TC. CONSTRAINT_TYPE AS ConstraintType
FROM 
information_schema.table_constraints TC,  
information_schema.key_column_usage KC  
WHERE
TC.CONSTRAINT_TYPE IN ('FOREIGN KEY', 'PRIMARY KEY') 
and KC.table_name = TC.table_name and KC.TABLE_SCHEMA = TC.TABLE_SCHEMA
and KC.CONSTRAINT_NAME = TC.CONSTRAINT_NAME
and KC.table_schema = DATABASE();
票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/120412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档