3

如何将 CLOB 数据类型用作 Oracle 中唯一键的一部分?

create table log_table
( message CLOB,
  id number,
 CONSTRAINT f PRIMARY KEY (message, id)
)

失败:

ORA-02329: 数据类型 LOB 的列不能是唯一的或主键

有解决方法吗?

4

1 回答 1

6

建议:

您可以将您的数据传递到一个哈希函数MD5或另一个哈希函数中。散列值将存储在message_key字段中。

create table log_table
( message_key VARCHAR2( 2048 ),
  message CLOB,
  id number,
 CONSTRAINT f PRIMARY KEY (message_key, id)
)
于 2013-08-29T14:44:06.337 回答