我想知道在MySQL中同时存储大约50个数据的哪个结构很好?
首先
data_id user_id data_key data_content
---------------------------------------------------
1 2 data_key1 content 1
2 2 data_key2 content 2
3 2 data_key3 content 3
.. .. .. ..
.. .. .. ..
50 2 data_key50 content 50
秒
data_id user_id data_key1 data_key2 data_key3 .. .. data_key50
-------------------------------------------------------------------
1 2 content 1 content 2 content 3 .. .. content 50
还是有其他解决方案? user_id
将拥有超过5000个用户。
答案 0 :(得分:0)
绝对是第一个!如果需要具有超过50个不同的“数据密钥”,该怎么办?第一种解决方案更灵活,更无污染。
答案 1 :(得分:0)
您是否知道数据密钥并且可能会更改?如果它们沿着“first_name,last_name,hair_color,eye_color,birthday,......”的方向排列,那么第二个模型将是可行的,因为您经常希望同时为用户检索所有这些模型。 / p>
第一个模型就像拥有持久哈希表一样,因此您必须将所有值存储为字符串,并且您的应用必须知道要查询的键。但是,如果键是用户定义的,则这是有意义的。
答案 2 :(得分:0)
我认为第二种解决方案不是一种方法。 如果我不认为错误并非所有tue用户都是2,但你有不同的数字,你应该做的是将该表标准化,将其除以。
有一个:
表主: id,data_id,user_id
表键 main_id,data_key
表数据: main_id,data_content
其中两个表中的key和data main_id都是表main中的id,这是加入它们的方式