MySQL触发器:更新一行并影响另一行

时间:2018-06-27 09:07:01

标签: php mysql mysqli triggers database-trigger

我是MySQL的初学者,我有一个包含一些数据的表(见下文)。

如何在MySQL上创建某种 trigger ,以便每次我将mainPhone更新为"Yes"时,其他行也更新为"No"。 / p>

  id | phoneNumber | mainPhone |
-----+-------------+-----------|
  1  | 08512312334 |    Yes    |
-----+-------------+-----------|
  2  | 08512312323 |    No     |
-----+-------------+-----------|
  3  | 08512312312 |    No     |
-----+-------------+-----------|
  3  | 08512312312 |    No     |

1 个答案:

答案 0 :(得分:0)

如果您是唯一访问此表的人,那为什么不自己更新其他行呢?当您更改一行的状态时,请更新另一行的状态。

您可以使用NOT运算符来完成此操作:

UPDATE myTable SET mainPhone = "Yes" WHERE condition
UPDATE myTable SET mainPhone = "No" WHERE NOT condition