我认为我的问题是概念性的,而不是实际的(尽管如果实际出现,我不介意)。
我是一名平面设计师,现在正在我的工作场所(商业公司)使用Rails + postgresql构建一个Web应用程序,其前提是显示存储在数据库中的服务列表。我被要求设计一个电子表格表供数据输入人员使用,以完成将硬拷贝复制到数据中的繁琐工作,然后我可以将其转移到数据库。
数据将使用JQuery进行显示,排序和过滤 - 因此表结构的要点是适合该过程。我的问题是,将传入的数据表(从电子表格或.csv的)拆分为两个是否更好,以便将显式显示的数据(即名称,描述,链接,图像)与将用于的数据分开。排序和过滤(即“位置”和“服务类别”等标签)或最好保持数据库表单一和与传入电子表格相同?是否有更好的第一个显式数据表,有几个连接/接合表来存储多个非布隆过滤标签?
或者我已经开始考虑它的方式出错了?
答案 0 :(得分:0)
如果您向我们提供了足够的信息,那么听起来网站将只关注一个数据表,即服务列表。
但是,我假设服务将包含类别和位置。这些可以与包含文本描述的列存储在同一个表中(尽管存在输入错误的风险)。但是,如果您还要添加类别和位置,那么将它们存储为单独的表并构建查询或视图以向Web应用程序提供适当的数据是有意义的。
如果要通过excel输入所有内容,那么您可以使用数据验证来显示主服务表的类别和位置的下拉列表。
就个人而言,我总是会尽可能地分割数据,因为它最终会导致更清晰的结构并消除输入错误。
所有这些假设您至少知道如何在数据库中构造表,联接,主键和外键以及构建查询/视图。
祝你好运永