我的问题:我的更新有多个条件:
更新游戏
SET 玩家2 = 玩家2ID
WHERE GAMES.id = 游戏 ID
AND GAMES.player2 为空;
通常,当我使用单个条件运行更新时,我可以检查受影响的行数是否为 0,并确切地知道插入不起作用的原因,并且可以轻松地向用户提供适当的错误消息。
但是,对于多个条件,仅知道没有行受到影响是不够的。要么游戏已经满了,要么游戏不存在。
我如何找出哪个条件没有得到满足?
最佳答案
您可以在 INSERT 之前使用 SELECT 来检查您需要什么
SELECT id, player2 FROM GAMES where id=gameId Or
如果我理解正确,你需要这个
SELECT player2 FROM GAMES where id=gameId
如果这个语句不为空,那么就有一个player2。
关于mysql - SQL:区分更新失败的多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49946151/