如何设计一个可扩展的数据库



我现在正在开发一个纸牌游戏参考网站。我需要一张桌子,我相信我将来会扩大它。

例如,如果我有一个用于保存卡片属性的表,并且每张卡片都有以下信息:

card_name    rarity    race    skill1

在未来,游戏可能会为这张卡添加另一项技能或其他信息,如下所示:

card_name    rarity    race    skill1    skill2    others

在这种情况下,我想知道什么是设计数据库的最佳解决方案。我是添加新列还是使用另一个表来保存卡片的新信息?

此外,我正在寻找一些我必须注意的技巧。顺便说一句,我正在使用mySQL

创建一个关系表。将主键id添加到卡片表中,即自动递增,并存储卡片的基本数据。然后创建一个关系表,其中外键是卡片表id。稍后您可以扩展该表。

这里有一篇关于如何创建的帖子:如何在MySQL中创建关系表?

以下是关于它的更详细的帖子:http://www.techrepublic.com/article/relational-databases-defining-relationships-between-database-tables/

您可以查看"键值对"表,尽管这在关系数据库中被认为是一种糟糕的做法。如果纸牌游戏的属性/技能不会经常改变(例如一年一到两次),我每次都会得到一个alter语句,并扩展表格。否则,键/值表可以自由添加任意多的属性。

相关内容

  • 没有找到相关文章

最新更新