我們有一個傳統的經典ASP應用程序,它使用ADODB將文檔存儲在SQL Server的映像列中。我們遇到的問題是單字節從大多數文件中丟失。我們有一個文件不會丟失字節的實例,所以我認爲它可能與大小有關。在SQL Server映像列中存儲數據時丟失一個字節
到目前爲止,我們有..
- 驗證正確的字節長度被傳遞到ADODB CreateParameter電話。
- 使用SQL Server BCP工具來驗證文件是否在SQL Server中損壞,而不是由我們提取。當我們用BCP提取文件時,它丟失了字節AND,我們確實使用了-w參數。
有沒有人有什麼建議我們可以嘗試接下來做什麼?
UPDATE:
我們已經做了一些調查研究,它似乎字節在ADODB消失。我們這樣做..
cmd.Parameters.Append cmd.CreateParameter( 「SupportDocImage」,adLongVarBinary,adParamInput,lSize所,sFilePath)
如果lSize所將是123139和sFilePath是二進制數據(是的...壞的命名)
這實際上調用存儲過程,並在該存儲過程中,我們將做一個DATALENGTH(@Variable),我們反而得到123,138。
從我們所看到的也是最後一個丟失的字節。
任何特定的字節?這是最後一個嗎? – UnhandledExcepSean
它似乎總是最後一個字節,但我會用pdf來驗證。 –
SQL語句是怎樣的?嘗試在插入後立即選擇數據長度('select data_length(col)'),以確保稍後沒有任何內容修改數據。 – usr