我有一個屬性的類:NHibernate的:讀取MySQL的Blob字段 - 值返回爲 「System.Byte []」
virtual public string Data { get; set; }
example.hbm.xml結合,爲:
<property name="Data" type="string" column="data" ></property>
在MySQL中的表與創建:
CREATE TABLE `xxx` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`data` blob,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=binary;
我可以成功地寫入到數據庫,我可以看到在寫正確的列中的文本。
當我嘗試從此表讀取記錄時,'Data'屬性的值是'System.Byte []'。這也是這個屬性的價值。它的類型是'System.String'。
怎麼辦?預先感謝任何線索。
我也嘗試過charset = UTF8。
我也在映射文件中嘗試過type =「StringClob」。
感謝 Tymek
你是完全正確的,但作爲數據庫架構已經到位,我會註明「它讀成字節[]」爲最佳答案。 – mayu 2011-04-28 00:56:06
@Tymek:沒關係。請記住,如果您想將其作爲文本進行閱讀,則必須使用編碼。 – 2011-04-28 01:20:29