概述:
我有一个表“类别”,大部分用于对产品进行分类,目前看起来像这样:
CREATE TABLE [dbo].[Category]
(
CategoryId int IDENTITY(1,1) NOT NULL,
CategoryNode hierarchyid NOT NULL UNIQUE,
CategoryString AS CategoryNode.ToString() PERSISTED,
CategoryLevel AS CategoryNode.GetLevel() PERSISTED,
CategoryTitle varchar(50) NOT NULL,
IsActive bit NOT NULL DEFAULT 1
)
该表被大量查询以显示购物网站上的类别层次结构(通常是每个页面视图),并且可以包含大量项目。
我在我的数据层中使用实体框架。
问题:
我需要添加可能是相当大的“描述”,它可能以网页的全部内容的形式出现,我想知道是否应该将其存储在相关表中而不是将其添加到鉴于实体框架将 100% 的时间将“描述”列拖出数据库,而现有的类别表在 99.5% 的时间里我只需要 CategoryTitle 和 CategoryId。
通常我不会担心实体框架的开销,但在这种情况下,我认为考虑它可能很重要。我可以使用存储过程中的视图或复杂类型来解决此问题,但这意味着我希望避免进行大量重构。
我只是想知道是否有人对这种情况有任何想法、建议或想要拍我的手腕......
编辑:
我应该补充一点,我犹豫设置辅助表的原因是因为我不喜欢添加一个与 Category 表具有 1 对 1 关系的附加表的想法 - 这似乎有点毫无意义。但我也不是 DBA,所以我不确定这是否是可接受的做法。