SQL服务器UDT尺寸2005年至2008年
-
22-07-2019 - |
题
在SQL服务器2005年,我们定义的一些UDT(用户定义的数据类型)在特别是SK(对于代理键)。这些被定义为32位'int'.因此,尺寸是4个字节。
在SQL服务器2008年,UDT整的数据类型将使用一个不同的存储机制,这取决于精度:
储存 显示最大储存的大小UDT。最大储存的大小各不相同,根据精确度。
精确度(数字)。....存储(bytes)
1 – 9........................5
10 – 19....................9
20 – 28...................13
29 – 38...................17
一个后果是,Udt基于两int和bigint将占据9个字节!注:地int和bigint数据类型仍然占据4和8个字节分别!
9字似乎很重量级,用于替代关键UDT!
任何人都可以解释为什么是这样(在特别设计的理由,这是)?怎么来的这种差异之间的UDT和当地的数据类型?
是否有任何替代办法除了不使用Udt?
不隶属于 StackOverflow