存储琐事替代品的最佳方式?

时间:2012-10-07 09:23:59

标签: mysql sql database data-structures

我正在创建一个应用程序,询问用户一个问题,并要求以国家/地区的形式给出答案。

例如: Eifell Tower在哪里?

向用户展示了许多替代方案,比方说10个不同的国家/地区。

当我想将每个答案存储到mySQL数据库时,问题就出现了。我有一张包含所有国家/地区的表格,需要存储哪些内容包含在问题中。但是,在这种情况下,这样做会为单个回答问题创建10个数据库行。我一直在考虑将所包含的国家存储为一个位掩码,但是对于超过150个可能的国家来说,单个位掩码是不够的。

非常感谢任何有关存储数据的好方法的帮助!

谢谢!

1 个答案:

答案 0 :(得分:0)

我只是将关系存储在您建议的表中。即,三个表,其中第一个包含问题(Id,question_text,..),第二个表包含所有国家(Id,name,..),第三个表包含说明哪个国家/地区可以选择哪个问题的关系(question_id,country_id)。就像你说的那样,在一个问题的关系表中给出十行,但是你真的面临存储空间或性能问题吗?

如果您有10k这样的问题,它仍然只有100k行和不到一兆字节的数据。问题本身将有更多的数据,所以问题和国家之间的关系不应该是我能看到的问题。