Please, read first my previous question: T-SQL finding of exactly same values in referenced table
The main purpose of this question is to find out if this approach of storing of data is effective.
Maybe it would be better to get rid of PropertyValues
table. And use additional PropertyValues nvarchar(max)
column in Entities
table instead of it. For example instead of
EntityId PropertyId PropertyValue
1 4 Val4
1 5 Val5
1 6 Val6
table, I could store such data in PropertyValues
column: "4:Val4;5:Val5;6Val6
"
As an alternative, I could store XML in PropertyValues
column....
What do you think about the best approach here?
[ADDED] Please, keep in mind:
- Set of properties must be customizable
- Objects will have dozens of properties (approximately from 20 to 120). Database will contain thousands of objects
[ADDED] Data in PropertyValues table will be changed very often. Actually, I store configured products. For example, admin configures that clothes have attributes "type", "size", "color", "buttons type", "label type", "label location" etc... User will select values for these attributes from the system. So, PropertyValues data cannot be effectively cached.