我正在制作一个游戏,到目前为止,我有一个成员表设置工作登录/注册。该游戏将是一个2人游戏,用户选择一个国家。数据库结构需要跟踪该国家的人口,州或省,人口。
我所做的是为游戏创建一个数据库,其中包含成员表,大厅/聊天表以及国家/地区的表格。每个国家都应该拥有自己的数据库,因为我需要跟踪我所说的那些事情(该国的州或省,人口等)
构建数据库的最有效方法是什么?
答案 0 :(得分:3)
为省,列'国家','省','人口'创建单个表。然后,您可以查询某个国家/地区的所有省份(正如您所期望的那样select province where country = "Narnia"
),或者获取在同一个表格中使用distinct子句的国家/地区列表(select distinct country from countries
)。
是的,每行都有重复数据 - 即['narnia','north']和['narnia','south']有2行,但这就是大量数据的结构数据块。
如果您将表格拆分为2,一个用于国家/地区,另一个用于国家/地区数据,您仍然具有上述结构,而不是国家/地区名称,您将拥有一个引用该行的国家/地区ID在另一张桌子上。对于“复杂”结构而言,这是一种简单的方法,只需将国家名称放在所有国家/地区数据的表格中即可。