使用MySQL集类型是否正确?

时间:2011-03-29 19:37:10

标签: sql set

您好 我正在构建一个用户数据库,其中每个用户都存储了一些关于它们的正常细节。 我还想存储用户知道的语言。

我知道这样做的一种方法是创建一个语言表,然后创建一个在语言和用户之间映射的单独表。是否更容易使用SQL“set”类型而不是为语言创建额外的表?

2 个答案:

答案 0 :(得分:4)

可能不是。使用SET时遇到很多问题(例如,只有64个元素;我很确定有超过64种语言)。

答案 1 :(得分:3)

作为一般规则,如果您可以枚举所有可能/支持的语言/值,SET将起作用。否则我会使用该表,因为返回并ALTER TABLE添加新语言不是一种非常好的方法,也可能需要使用{{1}更改应用程序如果你使用一个单独的表,它应该只是SET一个新的语言行。

而且,语言就是这样,我不想假设我事先知道每种语言。