我用Hibernate写入一个byte[],实体定义是这样的.@Entity(name="BlobTest")
public class BlobTest {
   private Integer id;
   private byte[] data;
   
   @Id
   public Integer getId() { return id; }
   public void setId(Integer id) { this.id = id }   @Column(name="data")
   @Lob
   public byte[] getData() { return data; }
   public void setData(byte[] data) { this.data = data; }
}我用了Annotations注解来定义映射.数据库为MySQL5
用HibernateTools产生SQL语句正常识别为Blob类型.
可是我在把这个对象保存,调用Session.save()时却报异常.
SQL Error: 1064, SQLState: 42000
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '???ZBm ±3??-{vê?Wn??p???á?m???|?rà??_?÷???d§??úó???;????k??Y?/??:w??á\'O?y?' at line 1Hibernate产生的SQL语句直接把二进制数据放上去了.
麻烦看一下问题在那.

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【donbing3】截止到2008-06-23 15:42:34的历史汇总数据(不包括此帖):
    发帖数:14                 发帖分:339                
    结贴数:1                  结贴分:24                 
    未结数:13                 未结分:315                
    结贴率:7.14  %            结分率:7.08  %            
      

  2.   

    你把这个javabean序列化下看看!