我是SQL / SQLite的新手,我正在创建一个用于存储高分数/ power / misc其他对象的数据库。这是它的设置方式(它有点复杂,但这与问题有关)。
TABLE世界(0-4)
-world_id的:int
表级别(0-8)
-level_id的:int
TABLE GameRecord
-record_id:诠释
-world_id:FK
-level_id:FK
-highscore:诠释
-locked:BOOL
我的前两个表(世界和级别)在他们的表(id)中只有一个键。这是设置数据库模式的正确方法吗?它在Android和SQLite中,但我认为这不会影响任何事情。谢谢你的帮助!
答案 0 :(得分:3)
这是设置数据库模式的好方法,如果您计划扩展Worlds
和Levels
表以便稍后包含更多字段。像名字或其他元数据这样的东西可以很好地放在那里。
如果您的世界和关卡只是数字而不是其他内容,则可以在GameRecord
world_id
和level_id
字段中使用整数,而无需担心外键关系。您也可以这样开始(没有其他表),然后将这些列更改为(或被视为)未来其他表的外键,当您有实际数据放在那里时。