我有一个我目前正在开发的 Web 应用程序,它使用 MySQL 数据库作为后端,在我继续之前,我需要知道什么对我的情况更好。
简单地说,在这个应用程序中,用户将能够使用任何数字字段(他们决定)构建自己的表单,现在我将它们全部存储在由外键链接的几个表中。我的一个朋友建议,为了让事情“简单/快速”,我应该将每个用户的表单转换为一个平面表,以便从他们那里查询数据保持快速(以防大幅增长)。
我应该使用外键(索引等)将所有内容汇集到关系表中来保持数据库规范化,还是应该为用户创建的每个新表单构建平面表?
显然,创建平面表的一些好处是数据分离(安全)和查询速度会降低。但是说真的,我会从中获得多少收益?我真的不想要 10000 个表并且一直在删除、更改和添加,但如果它比我会做的更好......我只需要一些输入。
谢谢