2
我正在將一些數據序列化到xml,然後將輸出寫入Oracle數據庫。寫入Oracle數據庫時出現錯誤字符串
序列化的數據可能會很長,並且寫入列類型LONG的(它永遠不會達到長,這是像32000個字符的最大值)
有時我的數據寫入,它似乎是腐敗的,只是顯示「?」和許多其他控制字符,有時寫作完美。
我使用的函數總是返回XML而沒有問題,寫入數據時會出現問題。
這是我的串行功能:
Private Function Serialize(myObject As object)
//serialize the object to a string...
Dim x = New System.Xml.Serialization.XmlSerializer(myObject .[GetType]())
Dim stringWriter = New StringWriter()
x.Serialize(stringWriter, myObject)
Dim test = stringWriter.ToString()
Return stringWriter.ToString()
stringWriter.Close()
End Function
我接着寫datawhich使用NHibernate返回到數據庫,因爲它是很長,一直沒有工作失敗了很久,我將不包括此代碼時間。問題似乎在於Oracle如何解釋數據。
我的單元作業提交時沒有任何錯誤 - 只有在oracle收到數據時纔會損壞數據。
UPDATE
如果我複製的StringWriter輸出,然後粘貼到數據庫中,我可以沒有問題
請不要使用'LONG',它已被完全棄用。使用'XMLType'或者至少'CLOB'來代替... –
沒有意識到它已被棄用,謝謝這個作品現在! – DNKROZ