查找数据库表的唯一约束 [英] Find a Database table's unique constraint

查看:56
本文介绍了查找数据库表的唯一约束的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用Java查找表的唯一约束(在Oracle数据库上,但这应该没有什么不同)。

我找到了一种发现表的主键的方法,这要归功于DatabaseMetaData的getPrimaryKeys(.); 但是,我找不到表的唯一约束,互联网也不能帮助我,所以我在这里结束提问:)

是否有一种简洁的方法来查找唯一约束(或者,更确切地说,查找表必须唯一的列名)。嗯,你拿到了吗,呵呵)一张桌子? 致以最诚挚的问候

NILS

推荐答案

可以查询数据字典:

SQL> SELECT cc.*
  2    FROM all_constraints c
  3    JOIN all_cons_columns cc ON (c.owner = cc.owner
  4                             AND c.constraint_name = cc.constraint_name)
  5   WHERE c.constraint_type = 'U'
  6     AND c.table_name = 'T';

OWNER      CONSTRAINT_NAME   TABLE_NAME     COLUMN_NAME     POSITION
---------- ----------------- -------------- ------------- ----------
VNZ        UNIQUE_COL        T              COLUMN1                1
VNZ        UNIQUE_COL        T              COLUMN2                2
VNZ        UNIQUE_COL2       T              COLUMN2                1

这篇关于查找数据库表的唯一约束的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆