0

我的桌子

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

我想更新 (member_id=1和)profil_id=2的记录A=1

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

再一次,我想更新 (member_id=1和)profil_id=2的记录A=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=1profil_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=1profil_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 中有两种方法可以做到这一点。第一个是使用REPLACE. 二是使用INSERT...ON DUPLICATE KEY UPDATE

REPLACE将尝试删除行,无论成功或失败,都插入新行。

INSERT...ON DUPLICATE KEY UPDATE将尝试插入一行,如果由于索引错误上的重复键而导致插入失败,则进行更新。

于 2011-06-19T12:26:30.197 回答