VARCHAR(65535)
フィールドをMySQLでID
に一意に維持するソリューションはありますか?MySQLで<ID>のユニークなVARCHAR(65535)フィールド
答えて
フィールドの値にハッシュ関数を使用して、同じテーブルの別の一意のフィールドに格納します。
だからあなたのテーブルには、このようなものになるだろう:そのテーブルに挿入する場合、あなたはtext_content
フィールドのSHA256ハッシュを計算し、text_hash
フィールドに格納します
create table my_table (
id integer not null primary key,
text_content varchar(65535) not null,
text_hash varchar(128) not null unique
);
。そうすれば、text_content
の値があなたのテーブルで一意であることを確かめることができます。
DB SIDEプログラミングが好きなら、が提供するトリガーにこのロジックを設定できます。
どのようにして衝突を処理できますか? – Nick
衝突は**非常にまれです。あなたがそれらを見つけるとは思わないでください。それは、そのような種類のアルゴリズムが設計されたものです。この質問をチェックアウト:http://stackoverflow.com/questions/4014090/is-it-safe-to-ignore-the-possibility-of-sha-collisions-in-practice –
これは100%防弾で解決されている可能性がありますハッシュコリジョンの場合のバイナリ比較+衝突の場合のキーの一意性のための自動インクリメントされたセカンダリフィールド。このようなタスクを実行するデータベースソリューションはありませんか? – Nick
- 1. MySQLの#1064 - varchar型のフィールド
- 2. MySqlでランダムでユニークなvarchar(n)を生成しますか?
- 3. ユニークなフィールドのないmysqlパーティション
- 4. MySQLの検索月のvarchar型のフィールド
- 5. すべてのVARCHARをVARCHAR(65535)として指定してみませんか?
- 6. 力のユニークなフィールド
- 7. インデックスフィールド+リミット1対パフォーマンスの点でユニークなフィールド比較| MySQL
- 8. mysqlパフォーマンス<, > varchar vs整数
- 9. カントはユニークなフィールドです!
- 10. MySQLでのVarcharエンコーディング
- 11. のMySQL:ユニークなインデックス
- 12. MySQLのユニークなインデックスデザイン
- 13. 長さが65535文字のMysqlストアドファンクション
- 14. MySql:他のフィールドがfalseの場合のユニークなインデックスのみ
- 15. MySQLの自然は、varchar型のフィールドでソート
- 16. Sonataのユニークなフィールドadmin - SYMFONY
- 17. MySQLのvarcharインデックスストレージ
- 18. MySQLのVARCHARサイズ?
- 19. SQLのvarcharから数値へのエラー、varcharフィールドのenvolvedなし
- 20. MySQL - ユニークなテーブル/エイリアス
- 21. 3つの異なるフィールドでユニーク
- 22. mysqlのユニークな最新エントリ
- 23. MySQLの構造 - ユニークなユーザグループ
- 24. MySQLデータベースのユニークな値
- 25. MySQLのユニークな行動
- 26. ユニークな値INSERT INTO mysqlの
- 27. MySQL varcharとIBM DB2 varchar dataypeの比較
- 28. mysql varbinary vs varchar
- 29. mysql varchar sort
- 30. MySQL varcharには、
*固有のID * - それはどういう意味ですか? –
IDは主キーエンティティです。 – Nick