0

私のテーブル

member_id - profil_id - A - B - C
1           2           1   0   0
1           3           0   1   0

member_id=1(とprofil_id=2A=1)のレコードを更新したい

member_id - profil_id - A - B - C
1           2           2   0   0
1           3           0   1   0

member_id=1繰り返しますが、(とprofil_id=2A=1)のレコードを更新したい

member_id - profil_id - A - B - C
1           2           3   0   0
1           3           0   1   0

member_id=1(とprofil_id=4A=1)のレコードを挿入したい

member_id - profil_id - A - B - C
1           2           3   0   0
1           3           0   1   0
1           4           1   0   0

member_id=1もう一度(とprofil_id=4C=1)のレコードを更新したい

member_id - profil_id - A - B - C
1           2           3   0   0
1           3           0   1   0
1           4           1   0   1

member_id=1もう一度(とprofil_id=4C=1)のレコードを更新したい

member_id - profil_id - A - B - C
1           2           3   0   0
1           3           0   1   0
1           4           1   0   2

このような...

ありがとう..

4

1 に答える 1

1

MySQL でこれを行うには 2 つの方法があります。1 つ目は、 を使用することREPLACEです。2 つ目は を使用してINSERT...ON DUPLICATE KEY UPDATEいます。

REPLACE行の削除を試み、成功または失敗に関係なく、新しい行を挿入します。

INSERT...ON DUPLICATE KEY UPDATE行の挿入を試行し、インデックス エラーの重複キーが原因で挿入が失敗した場合は、更新を行います。

于 2011-06-19T12:26:30.197 に答える