2016-11-26 358 views
0

我掙扎着一個小問題,我有一個長字符串(包含圖像),有近8000個字符。我需要將它存儲在SQL服務器中,並希望通過使用select查詢來獲得相同的結果。請任何人幫忙。字符串在下面。如何在SQL Server中存儲長字符串

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 

編輯:

我試圖存儲通過使用下面的代碼數據庫中該字符串(varbinary(MAX)數據類型):

cmd1.Parameters.AddWithValue("@image_client", Convert.FromBase64String(enad.photograph)); 

這成功地存儲在數據庫中的數據,但是當我從數據庫中提取它並將其轉換回它的原始字符串時,它會給我一個錯誤。

我使用低於該轉化回其一部開拓創新串代碼:

byte[] image = Convert.FromBase64String(dt.Rows[0]["image_client"].ToString()); 

上面的代碼生成以下錯誤:

The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters.

+2

*我有一個很長的字符串(含圖片)幾乎具有8000個字符*您可能只是......不是圖像存儲爲字符串。 'VARBINARY'或更好,不在數據庫中。否則'VARBINARY(MAX)'或'VARCHAR(MAX)'。 –

+0

只要這是圖像,你可以使用其他數據類型,例如'blob','filestream','varbinary(max)'等。 – Aruna

+0

我遵循同樣的描述。請在編輯中看到我的代碼,謝謝。 –

回答