EAV中的SQL_Variant或分离的数据类型值?

时间:2012-03-03 06:39:51

标签: entity-attribute-value sql-variant

我们在EAV中使用sql_variant数据类型作为值,但我认为最好为每个数据类型值使用一个表,因为sql_variant是8000字节,我担心这种数据类型为了巨大的价值。

你的想法是什么?哪个更好?

THANX

1 个答案:

答案 0 :(得分:0)

我意识到这个问题已经很老了,但我还以为我还是会回答它。

SQL_VARIANT每行不使用8000个字节。它使用与"基本数据类型相同的字节数" +最多16个字节来存储条目的元数据。它适用于大多数EAV,并具有保留原始数据类型的附加优势。它也非常快,尤其是在插入时,因为您不必转换为VARCHAR

真正的问题不在于是否在EAV中使用SQL_Variant ......真正的问题可能是你开始使用EAV的原因。 ; - )