ORA-28338: Column(s) cannot be both indexed and encrypted with salt ORACLE 报错 故障修复 远程处理

文档解释

ORA-28338: Column(s) cannot be both indexed and encrypted with salt

Cause: An attempt was made to encrypt index column with salt or an attempt was made to create an index on encrypted column with salt.

Action: Alter the table and specify column encrypting without salt.

ORA-28338: Column(s) cannot be both indexed and encrypted with salt是一个数据库错误码,指明在Oracle数据库中,不能同时对一列或多列加索引和加入“加盐”加密数据加密。

官方解释

ORA-28338,当您使用dbms_crypto.encrypt()或dbms_crypto.encrypt_raw()函数时,由于加密密钥是一个随机的数字,因此Oracle不支持您对被加密的数据进行索引。

常见案例

常见的案例是,用户会尝试将加盐加密的字段的索引分别添加到字段中,以便在查询中使用更快的访问。

一般处理方法及步骤

1)确认错误是否涉及加密列。

2)检查此列是否既有索引也有加盐加密,如果是,则应用ORA-28338错误。

3)分析该错误,并确定要索引或加密的字段。

4)根据实际业务情况,决定是添加索引还是加密此字段。

5)在此字段上应用您所选择的方法。


数据运维技术 » ORA-28338: Column(s) cannot be both indexed and encrypted with salt ORACLE 报错 故障修复 远程处理