我在vb.net中有一個OracleDataReader對象,它包含一個保存Long(這是Oracle中的文本)的列。我需要把它放到datagridview中,只要我嘗試通過數據表綁定它,或者用.toString轉換單個項目,我最終得到一個空字符串。如何在vb.net中處理Oracle長字符串
我意識到列可能會保留比放入數據網格更多的文本,我可以切斷一些,或者在轉換中丟失一些,因爲我只需要它的第一部分。
數據庫更改不是一個選項。任何人都有這方面的知識?
我在vb.net中有一個OracleDataReader對象,它包含一個保存Long(這是Oracle中的文本)的列。我需要把它放到datagridview中,只要我嘗試通過數據表綁定它,或者用.toString轉換單個項目,我最終得到一個空字符串。如何在vb.net中處理Oracle長字符串
我意識到列可能會保留比放入數據網格更多的文本,我可以切斷一些,或者在轉換中丟失一些,因爲我只需要它的第一部分。
數據庫更改不是一個選項。任何人都有這方面的知識?
試試這個:
如果使用ODP.Net訪問從淨Oracle數據庫,並選擇 長文本列,DataReader的的getString()方法會返回一個 空字符串。
要解決此問題,需要將
InitialLONGFetchSize
設置爲非零值,並使用OracleDataReader‘s
GetOracleString()
方法,並使用ToString()
將結果轉換成。Net
字符串。另一種可能性是將
InitialLONGFetchSize
設置爲-1,以便GetString()
按預期工作。
在這裏找到:http://devio.wordpress.com/2009/08/24/reading-long-oracle-columns-in-net/
當我嘗試設置它,它說,InitialLONGFetchSize是隻讀的。甚至在我填充OracleDataReader之前 – Loogawa
對於OracleDataReader而言,它似乎是隻讀的,從其他地方讀取 – Loogawa