【问题标题】:Oracle composite primary key with CLOB data point带有 CLOB 数据点的 Oracle 复合主键
【发布时间】:2013-08-29 14:38:07
【问题描述】:

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

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

失败:

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

有解决办法吗?

【问题讨论】:

    标签: sql oracle


    【解决方案1】:

    建议:

    您可以将数据传递到像MD5 或其他哈希函数中。 哈希值将存储在message_key 字段中。

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

    【讨论】:

    • 现在这是一个有趣的方法。所以你建议散列 clob 并将其用作我的复合键是吗?
    猜你喜欢
    • 2011-07-08
    • 1970-01-01
    • 2021-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    相关资源
    最近更新 更多