0

複数のエントリをテーブルに挿入しようとしています。ただし、これらのエントリの一部は既存のものと同じである可能性があります。そのようなシナリオでは、これらの重複するエントリを挿入しないでください。

次に例を示します。

テーブル

id  name    number
1   alice   12345
2   bob     67890

id は自動インクリメントですが、name と number は実際のデータです。

ここで、1 つの命令を使用してテーブルに挿入するエントリがさらに 3 つあるとします。

name    number
alice   12345
alice   54321
bob     67890

1 番目と 3 番目のレコードは既にテーブルにあるため、挿入時にそれらを無視することが望ましいでしょう。ただし、データベースは id もキーとして受け取ります。これは、エントリごとに常に異なります。では、どうすればこれを覆すことができますか?

ありがとう!

4

1 に答える 1

2

一意のキーが (name, number) である場合は、一意のインデックスを付けます。重複するエントリをスキップしたい場合は、INSERT...IGNORE をチェックするか、ON DUPLICATE KEY で深刻な魔法を実行してください。

于 2013-09-05T04:54:00.330 に答える