0

我有一個表,其中包含許多列浮點數據類型與15位精度。每列消耗8個字節的存儲空間。大多數情況下,數據不需要這麼高的精度,並且可以存儲爲真正的數據類型。在許多情況下,該值可以是0,在這種情況下,我可以放棄存儲單個字節。SQL Server中sql_variant列開銷的字節成本是多少?

我的目標是優化空間存儲需求,這是我正面臨的一個與SQL Express 4GB數據庫大小限制相關的問題。

如果byte,real和float數據類型存儲在sql_variant列中,存儲這些值顯然會涉及一些開銷。這種開銷的成本是多少?

然後,我需要評估是否實際上最終將顯着節省空間(或不是)切換到使用sql_variant列數據類型。

感謝,義隆

+1

更新Ø2008 R2和你的大小限制變爲10GB) – TomTom 2010-06-06 13:52:15

回答

1

使用SQL_VARIANT你不會節省空間,你會簡單介紹複雜

的整體水平的每一列必須具有正確的數據類型來存儲這個領域的所有可能的值。你需要全面浮動嗎?你可以使用tinyint嗎? etc等

如果你擔心4GB的限制,然後升級到新的Express版本(10GB)或向上移動版本。

+0

同意, sql_variant不會保存任何空間。查看SQL Server 2008 R2的新限制。謝謝! – Elan 2010-06-23 02:24:46

相關問題