我面对客户的应用程序如下所示:
基本上,Schema看起来像这样:
材料
MaterialID int not null PK
MaterialName varchar(100)not null
属性
物业ID
PropertyName varchar(100)
MaterialsProperties
MaterialID
物业ID
PropertyValue varchar(3000)
该应用程序的一个基本功能是搜索功能: 最终用户可以通过输入以下查询来搜索资料:
猜测它如何在MaterialsProperties表上执行,其中包含近200万条记录。
数据库最初是在SQL Server 2000下创建的,后来又迁移到SQL Server 2005
如何做得更好?
答案 0 :(得分:1)
您可以考虑按类型分隔您的MaterialsProperties表,例如进入IntMaterialProperties
,CharMaterialProperties
等。这将:
您还可以向Type
引入Properties
列,您可以使用该列来确定要查询的MaterialProperties
表。该列还可用于验证用户输入的类型是否正确,从而无需查询给定的“错误”输入。
答案 1 :(得分:0)