我有一个程序的2个实例,访问数据库中的1个表。
表points
只插入一次
game | player1 | player2
--------|-----------|-----------
Poker | 5 |
Skat | 8 | 4
Bridge | | 10
如果PLAYER1,使用第一种情况下,希望他的观点(如扑克牌)保存到表,它必须确信,扑克是否已经存在。如果没有,Poker将与player1的积分一起插入。但是,如果玩家2已经插入了扑克,则只应插入玩家1的点(该行只应该被修改)。
我怎样才能确定,每种游戏只插入一次,在这种情况下,只有插入点(改变)?
我认为,game
列必须是唯一的。
我的解决方法是首先查询游戏种类并检查行数。如果有0行,插入游戏和点,如果已经有1行,只插入点。
但是,有没有更好/更快的解决方案,而没有开始查询?
也许你应该重新考虑你的数据库设计。如果碰巧添加更多用户,最好为'用户','游戏'和交叉引用表'user_game'设置表格。 – dgw 2012-04-11 21:32:34
我知道,这只是一个例子。不过谢谢! – user1170330 2012-04-11 21:35:23
18总是...... – 2012-04-11 21:37:41