我将N个不同股票的价格实时保存到Microsoft SQL Server 2012数据库中,其中特定日期的所有数据都会进入当天的特定数据表。
由于我希望尽可能快地实时检索数据,因此表结构尽可能简单:使用行名标记时间戳,列名称指定库存的唯一名称。这种设置很简单但很有用,因为在分析数据时同时获取数据的同步快照非常重要。
当库存数量超过1000时会出现问题,因为SQL Server不允许我创建超过1000列的表。
我的问题是在N>的情况下我应该如何最好地设计数据库。 1000这样,数据检索尽可能地降低速度,并且尽可能少地将数据库逻辑转移给用户(例如,在多表解决方案的情况下,明确跟踪哪个库属于哪个表)。 / p>
欢迎任何评论
答案 0 :(得分:2)
您的数据库设计存在缺陷,您应该像这样设计表格:
RecordID
StockID
DateTime
Value
每个库存的每个记录值有一行,然后进行整理。