本文主要是介绍Informix数据表结构分析资料整理之约束查询代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本文主要整理了Informix数据库相关系统表数据,已分析整个Informix数据表结构,同时方便代码自动生成.
提示一:systables 存放Informix数据库中所有数据表相关数据
提示二:sysconstraints 存放Informix数据库中所有约束相关数据
--获取所有用户表的主键约束名称
select a.tabname,b.constrname,b.* from systables a join sysconstraints b on a.tabid=b.tabid where a.tabid >99 and a.tabtype='T' and b.constrtype ='P' order by a.tabname
--获取所有未设置主键的用户数据表OK
Select * from systables a where tabid >99 and tabtype='T' and not exists (Select 1 from sysconstraints b where a.tabid=b.tabid and b.constrtype ='P');
--获取所有用户表的外键约束名称
select a.tabname,b.constrname from systables a join sysconstraints b on a.tabid=b.tabid where a.tabid >99 and a.tabtype='T' and b.constrtype ='R' order by a.tabname
--获取所有未设置外键约束的用户数据表OK
Select * from systables a where tabid >99 and tabtype='T' and not exists (Select 1 from sysconstraints b where a.tabid=b.tabid and b.constrtype ='R');
--获取所有用户表的检查约束名称
select a.tabname,b.constrname from systables a join sysconstraints b on a.tabid=b.tabid where a.tabid >99 and a.tabtype='T' and b.constrtype ='C' order by a.tabname
--获取所有未设置检查约束的用户数据表OK
Select * from systables a where tabid >99 and tabtype='T' and not exists (Select 1 from sysconstraints b where a.tabid=b.tabid and b.constrtype ='C');
--获取所有用户表的唯一约束名称
select a.tabname,b.constrname from systables a join sysconstraints b on a.tabid=b.tabid where a.tabid >99 and a.tabtype='T' and b.constrtype ='U' order by a.tabname
--获取所有未设置唯一约束的用户数据表OK
Select * from systables a where tabid >99 and tabtype='T' and not exists (Select 1 from sysconstraints b where a.tabid=b.tabid and b.constrtype ='U');
--获取所有用户表的非空约束名称
select a.tabname,b.constrname from systables a join sysconstraints b on a.tabid=b.tabid where a.tabid >99 and a.tabtype='T' and b.constrtype ='N' order by a.tabname
--获取所有未设置非空约束的用户数据表OK
Select * from systables a where tabid >99 and tabtype='T' and not exists (Select 1 from sysconstraints b where a.tabid=b.tabid and b.constrtype ='N');
这篇关于Informix数据表结构分析资料整理之约束查询代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!