当前位置:数据库 > DB2 >>

在线等!!如何通过主表及其主键查询到与之关联的表及关联字段?数据库为db2

如果有通用的数据库sql(并测试通过) 追加100
补充:这个表肯定与其它表已经建立了关联关系,主表 a是主键也是关联字段,也已经知道,数据库设计的并不一定关联字段都是同一个名字,所以
现在就是不知道怎么通过sql从数据库中查询到与 这个表关联的其他的表? 

前提:我不能修改表或数据库结构,现在就两个条件 1:主表名称 2:主表主键就是关联字段 主键名称也已经取到
答案:SELECT
    OWNER,
    TABLE_NAME  AS 表名,
    COLUMN_NAME AS 列名,
    COMMENTS    AS 注释
FROM
    dba_col_comments
WHERE
    upper(column_name)='主键ID' (大写)

TABLE_NAME  AS 表名里面就是关联的表了
其他:关联的表,那要看你有没有将这个表与其他表建立关联关系了,比如说外键什么的,不然怎么判断是否是关联的表?如果关联字段名称相同的话,你也可以到数据字典中去查找。

db2没用过,如果是Oracle, 在 user_tables,user_tab_columns等表中 ,如果是mysql,在information_schema数据库中tables、columns表中 通过建一个表间的视图或者查询把两个表通过外键连接起来,然后在新生成的表中通过主表的主关键字再来查询。 关联的表,那要看你有没有将这个表与其他表建立关联关系了,比如说外键什么的,不然怎么判断是否是关联的表?如果关联字段名称相同的话,你也可以到数据字典中去查找。

db2没用过,如果是Oracle, 在 user_tables,user_tab_columns等表中 ,如果是mysql,在information_schema数据库中tables、columns表中 不过的找一家手表的性价比较高,服务较好的厂家。巧了,我这有家手表厂家,

美橙表业。 

上一个:db2怎么导出所有已建表名
下一个:DB2数据库连接问题

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,