postgres相当于all_constraints

时间:2015-01-14 14:26:07

标签: sql oracle postgresql

oracle提供了一个表ALL_CONSTRAINTS,显示了定义的所有约束的详细信息。比如我可以问

select CONSTRAINT_NAME, DELETE_RULE from ALL_CONSTRAINTS where TABLE_NAME='MY_TABLE'

postgres中有类似内容吗?

1 个答案:

答案 0 :(得分:3)

该信息可在information_schema。table_constraints:

中找到
select * 
from information_schema.table_constraints 
where table_name='my_table';

从user829755编辑: 为了显示DELETE_RULE,可以将其与另一个表连接:

select tc.constraint_name, rc.delete_rule
from information_schema.table_constraints tc
join information_schema.referential_constraints rc using (constraint_name)
where tc.table_name = 'my_table';

我在以下页面的帮助下发现了这一点,该页面展示了如何获取大量其他元数据:http://www.alberton.info/postgresql_meta_info.html