我有一个newsbasic表,其中content字段是CLOB类型的。  
我想用Select  语句把content字段的内容读出来。  
 
谁能告诉我怎么做呀??  
急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!  
急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!急呀!!

解决方案 »

  1.   

    将AdoQuery.FieldByName('Content').Value进行流式转换就可以操作了,用TStream
      

  2.   

    不知道这段代码对你是否有用,我是BLOB字段保存固定格式的数据.  memset(@MonthMoney,#0,sizeof(PMonthlyMoney));
      dm.SQLQuery1.Close;
      dm.SQLQuery1.sql.Clear;
      if reportsid = 0 then
        dm.SQLQuery1.SQL.add('select * from dailymov2')
      else
        dm.SQLQuery1.SQL.add('select * from dailymov3');
      dm.SQLQuery1.SQL.add(' where date1>=''' +
        formatdatetime('yyyy-mm-dd',dtfromdate) + ''' and date1<=''' +
        formatdatetime('yyyy-mm-dd',dttodate) + '''');
      dm.sqlquery1.Open;
      while not dm.sqlquery1.Eof  do
      begin
        dtdate := dm.SQLQuery1.fieldbyname('date1').asdatetime;
        decodedate(dtdate,yy,mm,dd);
        ms := dm.SQLQuery1.CreateBlobStream(dm.SQLQuery1.fieldbyname('data1'),bmRead);
        ms.Read(DailyMoney,sizeof(PDailyMoney));
        ms.Free;
        memcpy(@MonthMoney[dd],@DailyMoney,sizeof(DailyMoney));
        dm.SQLQuery1.Next;
      end;
      dm.SQLquery1.Close;
      

  3.   

    大家能不能说的清楚点把源码附上。。谢谢呀!
    我的SQL语句是这样的:
    select title
    from newsbasic        
    where  indate>sysdate-1 and to_CHAR(indate,'yyyy-mm-dd')=to_CHAR(sysdate,'yyyy-mm-dd') and id=? and rownum<=100 
    order by indate desc
    但我写成
    select title,content
    from newsbasic        
    where  indate>sysdate-1 and to_CHAR(indate,'yyyy-mm-dd')=to_CHAR(sysdate,'yyyy-mm-dd') and id=? and rownum<=100 
    order by indate desc
    就会出错。。
    要怎样改才可以
      

  4.   

    我用的数据库是oracle8 .....