我现在正在开发一个纸牌游戏参考网站。我需要有一张桌子,我相信我将来会扩展它。
例如,如果我有一个用于保存卡属性的表,并且每张卡都有以下信息:
card_name rarity race skill1
将来,游戏可能会为此卡添加其他技能或其他信息,如下所示:
card_name rarity race skill1 skill2 others
在这种情况下,我想知道设计数据库的最佳解决方案是什么。我是否添加新列或使用其他表来保存卡的新信息?
另外,我正在寻找一些我需要注意的提示。顺便说一下,我正在使用mySQL
答案 0 :(得分:0)
创建关系表。将主键id
添加到卡表,什么是自动增量,并存储卡的基本数据。然后创建一个关系表,其中foreing键是卡表id。稍后你可以扩展该表。
这是一篇关于如何创建它的帖子:How to create a relation table in MySQL?
以下是关于它的更详细的帖子:http://www.techrepublic.com/article/relational-databases-defining-relationships-between-database-tables/
答案 1 :(得分:0)
您可以查看"键值对"表,虽然在关系数据库中被认为是一种不好的做法。如果纸牌游戏属性/技能不会经常改变(例如一年一次或两次),我每次都会使用alter语句并扩展表格。否则,键/值表使您可以自由添加任意数量的属性。