oracle 中可以存图片有那几种类型, blob, 还是有别的?
假设我已经存进去了blob字段,如  name  varchar,
photo blob,当我 select name,photo from mytable  where name='lile' 时总报错 ‘不支援的类型’,
可是 select name from where name='lile' 没错 
我好像听过这跟ado的版本有关,要升级ado ,才能进行流处理,我搜索了很多怎么处理流的,但我连查都不行,下面就进行不下去了,我就是要查 name='lile'的照片
并显示在 Timage中,
我快不行,给位大虾救小弟一巴.

解决方案 »

  1.   

    sql:   select name,Thephoto from mytable  where name='lile' 具体读出如下:
    var
      tempbfield:TBlobField;
      tempbstr:TADOBlobStream;
    ...
      tempbfield := ADOQuery1.Fields[i] as TBlobField 
      tempbstr := TADOBlobStream.Create(tempbfield,bmRead);
      

  2.   

    sql:select * from mytable where name = 'lile'然后就是下面的用流处理!
      

  3.   

    如果在 Transact-SQL 脚本、存储过程和触发器中使用这种方法,则只能用于相对较短的值。如果数据的长度大于 SET TEXTSIZE 中指定的长度,则必须增大 TEXTSIZE 或使用其它方法检索IMAGE数据前必须SET TEXTSIZE。除非SELECT *!
      

  4.   

    如果你不仅要存图片,好要存其他各类比如文档、复杂格式图形,在ORACLE 中,最好用RAW数据类型,存的时候用:Tblobfield(dataset.fieldbyname('fieldname')).loadfromfile('filename');取的时候用Tblobfield(dataset.fieldbyname('fieldname')).savetofile('filename'),然后用合适的办法显示取出的文件。
      

  5.   

    先用SQL语句定位,然后再用Savetodbimage()函数来解决问题
      

  6.   

    blob类型本身有loadfromfile为什么不用