我在java程序里用二进制保存blob,byte[] buf = yztp.getFileData(); // 获取图片的文件数据
Blob blob = Hibernate.createBlob(buf);  
然后把blob写入数据库,为什么当图片大小大于4k时写不进数据库里呢??谢谢

解决方案 »

  1.   

    能不能换种思路,不,要在数据存图片,而存图片的路径,数据库用varchar2就可以了
      

  2.   

    hibernate还不熟悉,不过可以查查hibernate有关blob的用法。这里不一定是oracle的问题。
      

  3.   

    只要不超过2G的图片应该都是没问题的,嘿嘿,貌似没有这么大的图片1.插入输入的时候把图片字段保存为 EMPTY_BLOB ()
    通过第2、3步将图片数据保存到数据库
    2.通过select "+ blobFieldName+ " from " + tableName+ " where "+ pkFieldName+ " = "
    + pkFieldValue+ " for update; 
    3. update "+ tableName+ " set "+ blobFieldName+ " = ? where "+ pkFieldName+ " = "+ pkFieldValue
      

  4.   

    hibernate的blob我在sql server里是可以正常用的。
      

  5.   


    blobFieldName和pkFieldName是一样的吗?指字段??