0

「名前」と「メール」が一緒に存在するエントリがない場合にのみ挿入したい。

そのため、「名前」が別の電子メールで存在していても、その逆でも問題ありません。

mysql_query("INSERT INTO list (name,email) VALUES ('$name','$email') ");

パフォーマンスを向上させるために、これを 1 つの SQL ステートメントで実行したいと考えています。

4

4 に答える 4

1

両方の列(name、email)を複合主キーとして作成し、ON DUPLICATEKEYUPDATEを使用してphpエラーを防止します。

于 2012-12-18T00:36:08.337 に答える
1

[name、email]を主キーにできない場合は、一意の制約として設定してください。そうすれば、両方の値が一致するレコードは挿入されません。

于 2012-12-18T00:36:18.053 に答える
1

名前と電子メールに主キーを設定してから、次のようにします。

REPLACE INTO list (name,email) VALUES ('$name','$email')

replaceはinsertと同じですが、値がすでに存在する場合はそれらを上書きします。

于 2012-12-18T00:36:40.707 に答える
1

主キーをペア (名前、電子メール) にします。

于 2012-12-18T00:32:54.953 に答える