ホームページ > バックエンド開発 > PHPチュートリアル > PHP にデータを挿入するときに MySQL で重複エントリを防ぐにはどうすればよいですか?

PHP にデータを挿入するときに MySQL で重複エントリを防ぐにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-14 21:03:12
オリジナル
790 人が閲覧しました

How to Prevent Duplicate Entries in MySQL When Inserting Data in PHP?

MySQL データベースの重複エントリを効果的に防止する

問題:
重複した値を持つテーブルに数千のレコードを挿入すると、データの整合性が損なわれる可能性があります問題。 PHP でスクリプトをループするときにエントリの重複を防ぐにはどうすればよいですか?

解決策:

  1. 一意のキーを作成します:

    • 一意の定義一意である必要がある列の組み合わせに関する INDEX (例: pageId と名前):

      ALTER TABLE thetable ADD UNIQUE INDEX(pageid, name);
      ログイン後にコピー
  2. 重複の処理:

    • 次に、重複を処理する方法を決定する必要がありますエントリ:

      • 重複を無視:

        $query = "INSERT IGNORE INTO thetable (pageid, name) VALUES (1, 'foo'), (1, 'foo')";
        ログイン後にコピー
      • 既存のものを上書きレコード:

        $query = "INSERT INTO thetable (pageid, name, somefield) VALUES (1, 'foo', 'first') ON DUPLICATE KEY UPDATE (somefield = 'first')";
        ログイン後にコピー
      • カウンター更新:

        $query = "INSERT INTO thetable (pageid, name) VALUES (1, 'foo'), (1, 'foo') ON DUPLICATE KEY UPDATE (pagecount = pagecount + 1)";
        ログイン後にコピー

以上がPHP にデータを挿入するときに MySQL で重複エントリを防ぐにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート