看看这个场景:parses收集网站上的所有链接并将其存储在表格中。现在,没有办法事先知道网站页面上有多少链接,因此无法准备一个包含适当列数的表格。
-------|-------|-------|-------|---------------
website| link1 | link2 | link3 | maybe100columns
当您不知道需要多少列时,解决此问题的常用方法是什么?您是否以json格式编码所有链接并将json存储在1列中?
答案 0 :(得分:2)
正确的方法是基于规范化 而不是
-------|-------|-------|-------|---------------
website| link1 | link2 | link3 | mybe100columns
你应该使用一对无表情的表
主
------------|-------
id_website |website
详细信息
---|------------|----
id |id_website |link
答案 1 :(得分:1)
为什么需要为每个链接创建每列?引入关系数据库系统来解决这些类型的问题。一个简单的解决方案是为您的场景使用两个表。
在一个表格中,您将保留website
列,而另一列主键应分配到website_id
列。
在第二个表格中,将为主列分配一个主键link_id
,然后分配给列website_id
的外键,该列将在第一个表的website_id
引用中最后另一列名为link
。
因此,通过这种方式,您将存储任何网站所需的链接。