2016-11-10 134 views
1

我試圖在SQL Server 2012中保存json數據。該數據的大小超過了varchar(max)的大小,因此SQL Server會截斷剩餘的文本。存儲更多數據的解決方案是什麼?如何在SQL Server列中存儲超過varchar(max)的非常大的數據?

+3

如果你超過了varchar max的長度,那麼你的代碼中就有可怕的錯誤。 varchar(max)將保存2GB的文本。我知道這是json數據,但這是大量的信息。 –

+0

是的,我知道我們超過了長度,這不是好的做法,但在這裏我們正在處理大型excel文件數據並在計算後將其轉換爲json。我們希望將這些數據保存在db中,因此在用戶確認一切正常後,我們可以使用存儲的數據快速保存以提高性能。 –

+2

超過2GB的Excel數據?你的表現必定是一個真正的挑戰。 –

回答

3

Sql Server具有FileStream功能,允許您存儲不符合標準varchar(max)字段的數據。另外還有一個選項(),名爲FileTables,允許你在文件系統上存儲文件,但是直接從T-SQL訪問它。這很光滑,但我和我的同事發現學習曲線非常陡峭;許多你必須習慣的小怪癖。

+0

FileTables從2016年版開始提供,正如我們在2012年提到的那樣。所以FileTables不會有幫助。 –

+2

@Parag Patil不,他們不是。我們也在2012年......我只是將最新的文檔鏈接起來。 *嘆息* – Kittoes0124

+0

知道什麼是有用的@ParagPatil,這個答案 – scsimon

相關問題