web-dev-qa-db-ja.com

Clobを(Javaからの)テーブルキーとして使用できますか?

別の人への提案に続いて 質問 大量のテキストを保存する: [〜#〜] clob [〜#〜] を主キーフィールドとして使用できますか(つまり、 JavaのJDOのDataNucleus実装から)?

CLOBをキーとして使用することはおそらく非常に悪い考えですが、ワンショット操作では大きなテキストをキーとして使用する必要があります。

2

単純なバージョンは、CLOBからハッシュを生成し、これをキーとして使用することです。このキーは、エンジンで許可されているキー幅(900 SQL Server、767 InnoDB、1000 MyISAMなど)に適合します。

ハッシュは、計算された列、トリガーとしてエンジンによって、または何らかのETLプロセスによって、またはアプリケーションによって生成できます。

衝突の可能性はわずかですが( 誕生日の問題 )、これは多くのレコードハッシュアルゴリズムの不適切な選択にのみ問題になります

4
gbn