0

ユーザー名とニックネームを更新したいのですが、ニックネームは一意の列です。

UPDATE `Users` 
SET `Nickname` = '$nickname', 
    `Name` = '$name' 
WHERE `ID` = '$userID'

ユーザーが使用済みのニックネームを選択した場合、クエリは次のように返しますDuplicate entry 'x' for key 'Nickname'。重複した列をクエリに無視させ、他の列を変更することはできますか?

4

1 に答える 1

1

代わりにREPLACEINTOを使用してみてください

REPLACEはINSERTとまったく同じように機能しますが、テーブル内の古い行がPRIMARY KEYまたはUNIQUEインデックスの新しい行と同じ値である場合、新しい行が挿入される前に古い行が削除されます。

于 2012-09-20T05:33:14.413 に答える