PHPスクリプトからMySQLデータベイトに条件付きINSERTを作成しようとしています。次のSQL構文はphpMyAdminで機能しますが、私のPHPスクリプトでは機能しません。
INSERT INTO profiles (id, firstname)
SELECT "22","John" from profiles
WHERE NOT EXISTS (
SELECT * FROM li_profiles
WHERE li_p_firstname = "John"
)
(「id」は主キーであり、「firstname」はキーまたは一意ではないことに注意してください)
問題の一部である可能性がある奇妙なことは、phpMyAdminでそのSQLを実行すると、「動作」している間(つまり、ID「22」と名「John」で新しいレコードが追加される)、次のようになります。警告:「#1062-キー1のエントリ「22」が重複しています」しかし、テーブルにはIDが22の前のエントリがありませんでした。?? !!
どうしたの?