在假设的场景中,我是没有表创建权限的用户.我想知道表中的列是否具有UNIQUE CONSTRAINT.是否有可能在DICTIONARY中查找?我该怎么办呢?
解决方法
这里给出的两个答案都错过了一种方法来强制列的唯一性:通过创建唯一索引(不在列上定义唯一约束).如果您不熟悉此选项,请参阅这两个链接(
one,two).
除了唯一约束检查之外,还应执行此检查:
select count(*) from USER_IND_COLUMNS cols where cols.table_name='YOUR_TABLE_NAME' and cols.COLUMN_NAME='YOUR_COLUMN';
要检查唯一约束,请使用已提供的方法:
select count(*) cnt from user_constraints uc where uc.table_name='YOUR_TABLE_NAME' and uc.constraint_type='U';
或者,您也可以查看ALL_CONSTRAINTS和ALL_IND_COLUMNS视图.