我正在使用informix數據庫,我有兩個表;實例和聯繫人。聯繫人表格具有以下字段; contact_id,fname和lname。實例表包含以下字段:instance_id,name和contact_ids(contact_ids是informix設置的聯繫人ID集合,[email protected])。 我使用hibernate進行數據持久化。我的實例類的代碼如下所示:使用休眠從數據庫中檢索一組基本類型
@Entity
public class Instance{
@Id
private int instance_id;
private String name;
@Lob
private Set<Integer> contact_ids
....
setters and getters
}
聯繫類別:
@Entity
public class Contact{
@Id
private int contact_id;
private String fname;
private String lname;
....
setters and getters
}
當我加載一個實例實體出現以下錯誤:
20:32:18,527 ERROR [jsp:154] java.sql.SQLException: **Can't convert to: binary stream**
at com.informix.util.IfxErrMsg.getSQLMinorException(IfxErrMsg.java:575)
at com.informix.jdbc.IfxObject.toBlob(IfxObject.java:647)
at com.informix.jdbc.IfxResultSet.getBlob(IfxResultSet.java:3338)
at com.informix.jdbc.IfxResultSet.getBlob(IfxResultSet.java:3437)
我只是想檢索集合。
謝謝你的解決方案。我嘗試了第一個選項,但有一個錯誤,如下所示: – 2012-02-09 22:26:00
我嘗試了第一個選項,但有一個錯誤,如下所示:java.sql.SQLException:指定的表(contact_ids)不在數據庫中。 實例和聯繫人表之間沒有直接關係。存在的唯一關係是該實例表具有一組聯繫ID。聯繫人表沒有實例ID。我正在處理現有的數據庫,我不想更改表結構。我在想,因爲contact_ids字段是一個集合,所以有一種檢索集合的方式,不需要像檢索日期或字符串一樣創建任何關聯。 – 2012-02-09 22:37:17
呃,我沒有意識到數據庫結構是固定的,你不想改變它。在這種情況下,兩種解決方案都不會立即奏效 – 2012-02-09 23:07:02