重複したエントリーに対抗する最もエレガントな方法

私は、自分の設定の結果としてデータベースに重複するエントリが入るのを防ぐための解決策に取り組んでいます。

私はいくつかの値のmd5ハッシュを行い、そのハッシュがすでに存在するかどうかを確認するためにテーブルをチェックする予定です。

これは、サーバー上のtxtファイルの行に沿ってmysqlテーブルや何かを使って効率的に実現できますか?

誰かより洗練されたソリューションを提案できますか?

私は何かすべての助けに感謝します。

0
あなたはデータベースに何を保存していますか?どのエントリ?
追加された 著者 evilone,
InnoDBエンジンを使用している場合は、外部キーとフィールドインデックスをチェックアウトしてください。
追加された 著者 Chris Laplante,

1 答え

You can create a UNIQUE INDEX and add to it the column set in which values you don't want to be duplicated. Then the DB will return you an error on every transaction that attempts to duplicate that data. Check this: Create Index on MySQL reference

3
追加された
私は古代のMS SQLデータベースからのいくつかの非常に恐ろしいデータでこれをやってきました。それは楽しいのです...
追加された 著者 Bojangles,
ありがとう - 私は本当にこのオプションについて考えていませんでした。これは、一意でなければならない列(列が1つではない)の組み合わせであるためです。これは、チェックするだけで新しいテーブルを作成するよりも簡単で、サーバーの負荷をより早く/少なくするよりも簡単です。
追加された 著者 JohnCharles117,
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com