有时我们需要一个查询表主键外键信息的SQL语句,下面就将为您介绍该语句的写法,如果您对此有兴趣的话,不妨一看。
下文为您介绍Oracle及SQL Server两种数据库中查询表主键外键信息的SQL语句写法,供您参考,希望对您学习SQL语句的使用有所启迪。
Oracle:
- selecto.obj#asobjectId,o.nameAStableName,oc.nameASconstraintName,
- decode(c.type#,1,'C',2,'P',3,'U',
- 4,'R',5,'V',6,'O',7,'C','?')asconstraintType,
- col.nameAScolumnName
- fromsys.con$oc,sys.con$rc,
- sys.obj$ro,sys.obj$o,sys.obj$oi,
- sys.cdef$c,
- sys.col$col,sys.ccol$cc,sys.attrcol$ac
- whereoc.con#=c.con#
- andc.obj#=o.obj#
- andc.rcon#=rc.con#(+)
- andc.enabled=oi.obj#(+)
- andc.robj#=ro.obj#(+)
- andc.type#!=8
- andc.type#!=12/*don'tincludeloggroups*/
- 字串9
- andc.con#=cc.con#
- andcc.obj#=col.obj#
- andcc.intcol#=col.intcol#
- andcc.obj#=o.obj#
- andcol.obj#=ac.obj#(+)
- andcol.intcol#=ac.intcol#(+)
- ando.name='yourtable'
SQL Server:
- SELECTsysobjects.idobjectId,
- OBJECT_NAME(sysobjects.parent_obj)tableName,
- sysobjects.nameconstraintName,
- sysobjects.xtypeASconstraintType,
- syscolumns.nameAScolumnName
- FROMsysobjectsINNERJOINsysconstraints
- ONsysobjects.xtypein('C','F','PK','UQ','D')
- ANDsysobjects.id=sysconstraints.constid
- LEFTOUTERJOINsyscolumnsONsysconstraints.id=syscolumns.id
- WHEREOBJECT_NAME(sysobjects.parent_obj)='yourtable'
【编辑推荐】
修改SQL主键约束的SQL语句写法
对存储过程代替SQL语句的讨论
试SQL语句执行时间的方法
SQL语句中的SELECT DISTINCT
如何使用SQL语句修改字段默认值
转载请说明出处
知优网 » 两种数据库中查询表主键外键信息的SQL语句(sql表主键和外键)
知优网 » 两种数据库中查询表主键外键信息的SQL语句(sql表主键和外键)