如何在 SQL 数据库中组织 10.000 个不同大小的表 [关闭]
Posted
技术标签:
【中文标题】如何在 SQL 数据库中组织 10.000 个不同大小的表 [关闭]【英文标题】:How to organize 10.000s of tables of different size in a SQL database [closed] 【发布时间】:2018-10-24 20:35:04 【问题描述】:我有一个程序,用户将数据填充到表中。这些桌子都有不同的尺寸,有些是 3x2,有些是 30x20。 它就像一个 Excel 表,看起来像这样,用户可以根据需要添加行和列。这些是与产品相关的图表,因此每个表都有一个唯一的产品编号
在 SQL 数据库中组织这些数据的最佳方式是什么? 每个用户生成的表是一个 SQL 表吗?
这似乎太过分了,因为我最终会得到一个包含 10000 个表的数据库。还有其他更好的方法来存储数据吗?我可以将它合并到一个 SQL 表中吗?
【问题讨论】:
这些表中的值有什么关系 通过产品编号,它们是与具有唯一产品编号的产品相关的不同类型的图表 不是一个表,但您可以而且绝对应该将它们组合成较少数量的表。 这可能更多是基于意见,因为您共享的要求非常高。您可以考虑使用XML
列(RecordId、UserId、DataXML),也可以将单元格存储在表中(RecordId、RowNum、ColNum、DataValue、UserId)
如果你能尽可能详细地描述你想要存储的内容,我相信你会得到一个很好的解决方案。
【参考方案1】:
你可以制作像这样的SQL表
table_header
- id
- rows
- cols
table_detail
- header_id
- row
- col
- value
然后,为了存储一个表,您创建一个标题记录并一次添加一个条目的内容。要读回表格,您基本上只需提取表格的所有数据,如果您想让解析回表格更容易,可能使用ORDER BY
。类似的东西。
【讨论】:
还有user_id
以上是关于如何在 SQL 数据库中组织 10.000 个不同大小的表 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章