直接UPDATE
できます 値がすでに存在する場合、またはINSERT
INSERT...ON DUPLICATE KEY UPDATE
を使用して存在しない場合
ただし、最初に一意の列を指定する必要があります
ALTER TABLE user_account ADD CONSTRAINT tb_uq UNIQUE (id_user)
列ID_USER
の場合 はすでに主キーであるため、最初の方法をスキップします。実装後、次の構文を使用できるようになります
INSERT INTO user_account (id_user, bio)
VALUES($id, '$bio')
ON DUPLICATE KEY UPDATE bio = '$bio';
補足として、クエリはSQL Injection
で脆弱です。
値( s )変数のは外部から来ました。それを防ぐ方法については、以下の記事をご覧ください。 PreparedStatements
を使用する 値を一重引用符で囲むことはできません。