Ms Sqlserver与Oralce取得表的列信息与外键信息

Ms Sqlserver与Oralce取得表的列信息与外键信息  

2009-02-19 08:52:10|  分类: Oracle |字号 订阅

取得Ms SqlServer数据库中某张表的所有列:

 

SELECT sysobjects.name AS TABLENAME,
    syscolumns.NAME as NAME,
    systypes.name VTYPE,
    syscolumns.LENGTH,
    syscolumns.XPREC,
    syscolumns.XSCALE,
     isnullable,
     cdefault
 FROM syscolumns,sysobjects,systypes
 WHERE  syscolumns.id = sysobjects.id and
   syscolumns.xtype = systypes.xtype and
   sysobjects.type='U' and
   sysobjects.name = 表名

 

取得Oracle数据库某张表的所有列:

 

SELECT TNAME AS TABLENAME,
   CNAME AS NAME,
   COLTYPE AS VTYPE,
   WIDTH AS LENGTH,
   PRECISION AS XPREC,
   SCALE AS XSCALE,
   NULLS AS isnullable,
   DEFAULTVAL AS cdefault
 FROM COL
 WHERE TNAME = 表名;

 

 

取得Ms Sqlserver数据库的所有外键信息

 

select  
   b.name as key_name,
   a.name as name,
   d.name as f_name

  from   sysobjects   a   join   sysobjects   b   on   a.id=b.parent_obj  
  join   sysforeignkeys   c   on   b.id=c.constid  
  join   sysobjects   d   on   c.rkeyid=d.id  
  join   sysindexkeys   e   on   d.id=e.id  
  join   syscolumns   f   on   a.id=f.id   and   e.colid=f.colid  
  where     b.xtype='F'

 

取得Oracle数据库的所有外键信息:

 

select all_constraints.constraint_name as key_name,
   all_constraints.table_name as name ,
   all_indexes.table_name as f_name
from all_constraints,all_indexes
where  constraint_name like 'FK%'
and all_constraints.r_constraint_name = all_indexes.index_name



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值