我有一个游戏。在游戏中,人们从2个选项中做出了很多选择。
选择可以是正确的还是错误的,我将他们在游戏中运行的结果(可以是一个非常大的长度)存储为一个字符串,其中1表示正确答案,0表示错误答案。
例如,播放器128937
将在其运行列中将字符串00010101010010001010111
存储为varchar(5000)
。
有没有更好的方法可以将这些信息存储在MYSQL中? (如果可以帮助的话,我也使用PHP)
答案 0 :(得分:4)
我会用三列创建一个新表(比如说它的'答案'): question_id,user_id和answer(将保存值为0/1)
每次玩家回答问题时,您都会在此表中插入新条目。
通过这种方式,维持正确/错误答案的总和会更容易
答案 1 :(得分:0)
为什么不为每个选项使用tinyint(1)而不是使用字符串?
答案 2 :(得分:0)
我会制作多个表
选择
id
scenario (or other title)
选项
id
choice_id
title (example: "go left" or "turn around and go home"
correct (0 or 1)
user_choices
user_id
option_id
choice_id (optional since choice_id is already in options table)