Oracle中视图上的唯一键

Oracle中视图上的唯一键,oracle,view,key,inline,materialized,Oracle,View,Key,Inline,Materialized,我有一个视图没有唯一的键,但它有一个复合键。我想动态创建一个数字键,以便在多次检索中保持一致。ROWNUM显然不是一个选项,因为在视图中插入/删除数据时可以重新分配它。我可以选择切换到物化视图,但不能切换到基于查找的加载过程时间约束。 有没有办法在oracle内联视图或物化视图中创建一致的动态唯一键?试试看 创建或替换someview 像 选择col1 | | col2作为ukey、col1、col2、col3、col4等 从某处 在哪里 这里col1和col2是您所说的组合键。您能计算出键吗?

我有一个视图没有唯一的键,但它有一个复合键。我想动态创建一个数字键,以便在多次检索中保持一致。ROWNUM显然不是一个选项,因为在视图中插入/删除数据时可以重新分配它。我可以选择切换到物化视图,但不能切换到基于查找的加载过程时间约束。 有没有办法在oracle内联视图或物化视图中创建一致的动态唯一键?

试试看 创建或替换someview 像 选择col1 | | col2作为ukey、col1、col2、col3、col4等 从某处 在哪里


这里col1和col2是您所说的组合键。

您能计算出键吗?例如,按key_col1、key_col2排序将产生一个唯一的重复值,假设key_col1、key_col2是唯一的,只要数据在两次检索之间不发生变化。如果数据在两次检索之间发生变化,则根据数据的性质(如是否可以删除行、新行是否自然地按旧行排序等),计算出的键可能相同,也可能不相同。您希望如何使用此键?每次插入或删除记录时,从基础表中的数据派生的任何内容都将发生更改,并且可能会更新为。那么重点是什么?@APC:目的是查看由非技术性列组成的业务密钥是否可以一致地映射到唯一的数值。然后,键的使用者可以使用该数值作为主键,而不必连接三个不同的列。