我正在构建一个PHP/MySQL应用程序,我允许用户创建自己的自定义(尽可能多)他们的个人资料数据(即他们可以添加任何数量的信息到他们的配置文件,但有一个“核心”用户配置文件字段)MySQL,但不知道列名前手
例如,他们可以在窗体上创建一个新的文本框,并将其称为“我的宠物”和/或“我最喜欢的颜色”。我们需要将这些数据存储在数据库中,并且显然不能为每个选择创建列,因为我们不知道他们的附加信息是什么。我们认为我们可以存储所有“addidional信息”,他们提供
一种方式是存储他们的其他信息作为JSON并将其存储在一个MySQL文本字段(我爱MySQL的:))
我见过Wordpress表单构建器插件,您可以创建自己的字段,所以我认为他们必须以某种方式将数据存储在MySQL中,因为NoSQL解决方案超出了这些插件的范围。
我很想坚持MySQL,但是你们认为像MongoDB/Redis这样的NoSQL解决方案会是更好的解决方案吗?
谢谢
答案与往常一样,是_it depends_。如果你有成千上万的用户,你需要尝试各种解决方案,看看会发生什么。但是,对于相对较小的一组行的一小组选项,在现有的关系数据库中,JSON或序列化的PHP值是没有问题的。我认为WordPress的内部使用序列化的一些选项记录。 – halfer
+1有趣的问题和一个不错的功能:-) –