私はmysqlユーザーではなく、ドキュメント(https://dev.mysql.com/doc/)を見て、いくつかのルートがあります。私はあなたにアップサンプリングの方法を示しています(これはかなり涼しく、以前は見たことがありません)。
まず、検索の実行を支援し、選択基準を満たすために主キーを使用する必要があります。
# sample table with primary key
CREATE TABLE customer (customer_id int not null primary key, name VARCHAR(20), email VARCHAR(20), password VARCHAR(20));
# seed with data
INSERT INTO customer VALUES(1,'John','[email protected]','password1');
INSERT INTO customer VALUES(2,'Jane','[email protected]','passwordx');
# set test params
SET @password = 'password1';
SET @email = '[email protected]';
SET @newPassword = 'pass54321';
/*
depending on how the rest of the query is structured or if this
doesn't fit the requirements...you have the option to use IF EXISTS
This is using the 'ON DUPLICATE KEY UPDATE' to check if the record exists then performs an update if it does or an insert if it doesn't (aka upsert)
*/
INSERT INTO customer VALUES (1, 'John', '[email protected]', 'password1')
ON DUPLICATE KEY UPDATE password = @newPassword;
# test for password update
SELECT * FROM customer WHERE customer_id = 1
テーブルに主キーがない場合は、! If EXISTS
ステートメントを使用する方が適切な場合があります。
組織内の誰かにタグを付け、自分が行っていることがコーディングの基準内であることを確認します。 MySqlのドキュメントサイトを使用してください - それはよく維持されているようです。
MySQLでは、 'IF'はプログラミングブロック(ストアドプロシージャ、関数、トリガ)でのみ使用できます。 –