Portal | IBM Manuals | Downloads | Products | Refer | Info | Programs | JCLs | Forum Rules*| Site Map | Mainframe CD 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index
 
Register
 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index FAQ Search Memberlist Usergroups Profile Log in to check your private messages Log in
 
How to find the relation between tables?

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DB2
Author Message
Help-Me-Out

Active User


Joined: 09 Dec 2006
Posts: 56
Location: Pune

PostPosted: Thu May 08, 2008 5:15 pm    Post subject: How to find the relation between tables?
Reply with quote

Hi,

how to find the relation between the two tables i.e. how to find the which is primary key and foreign kay of the tables?
Back to top
View user's profile Send private message
References
PostPosted: Thu May 08, 2008 5:15 pm    Post subject: Re: How to find the relation between tables? Reply with quote

ashimer

Active User


Joined: 13 Feb 2004
Posts: 189
Location: Bangalore

PostPosted: Thu May 08, 2008 5:31 pm    Post subject:
Reply with quote

Code:


select colname from sysibm.sysforeignkeys where tbname = 'table name';



will give you the col which is the foreign key

now for primary key

select colname from sysibm.syskeys where ixname in
(select name from sysibm.sysindexes where tbname ='table name');
Back to top
View user's profile Send private message
the_gautam

Active User


Joined: 05 Jun 2005
Posts: 169
Location: Bangalore

PostPosted: Fri May 09, 2008 7:34 am    Post subject:
Reply with quote

you may get the details of the primary key with the following query as well :

SELECT NAME FROM SYSIBM.SYSCOLUMNS WHERE TBCREATOR = <TABLE CREATOR NAME> AND TBNAME = <TABLE NAME> AND KEYSEQ > 0;

(OR)

SELECT A.COLNAME, A.COLSEQ, A.ORDERING, FROM SYSIBM.SYSKEYS A, SYSIBM.SYSINDEXES B WHERE A.IXNAME = B.NAME AND A.IXCREATOR = B.CREATOR AND A.IXCREATOR = B.TBCREATOR AND B.TBNAME = <TABLE NAME> AND B.TBCREATOR = <TABLE CREATOR> AND B.UNIQUERULE = ‘P’;
Back to top
View user's profile Send private message
Help-Me-Out

Active User


Joined: 09 Dec 2006
Posts: 56
Location: Pune

PostPosted: Fri May 09, 2008 2:08 pm    Post subject: Reply to: How to find the relation between tables?
Reply with quote

Thanks all for ur reply.. this is working
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DB2 All times are GMT + 6 Hours
Page 1 of 1