3

10列のテーブルがあり、CSVファイルから多くの行を追加する必要があります。もちろん、2つの同一の行を追加してはならないため、行全体が存在する場合はコマンドを無視するSQLステートメントが必要です。INSERTは、すべてのフィールドが同一である場合にのみ無視する必要があります。2つの行に同じfield1またはfield2がある場合がありますが、すべてのフィールドが同じであるとは限りません。

試しINSERT IGNOREましたが、うまくいきません。行全体が同一である場合にのみonylを無視UNIQUEする必要があるため、列はとして設定されません。INSERT

これに対してどのような解決策がありますか?ありがとう!

4

1 に答える 1

2

次に、または必要に応じて、すべての列に結合インデックスを作成します。INSERT IGNOREREPLACE INTO

ドキュメントから:

IGNORE キーワードを使用すると、INSERT ステートメントの実行中に発生したエラーは代わりに警告として扱われます。たとえば、IGNORE を使用しない場合、テーブル内の既存のUNIQUE インデックスまたは PRIMARY KEY 値を複製する行は、重複キー エラーを引き起こし、ステートメントは中止されます。IGNORE を使用すると、行はまだ挿入されませんが、エラーは発行されません。

于 2012-06-13T20:01:23.240 に答える