现有数据库中有long raw 字段类型,存放的XML格式的数据,现在想完成将XML数据更新到该字段,请问如何处理。insert 新数据,含该long raw 字段信息;
update 该long raw 字段。long raw字段是数据库已经设计好的,各位大侠就不要建议我换其他数据类型了,呵呵。谢谢了!

解决方案 »

  1.   

    什么语言?Java or python or shell?.net系列的不会
      

  2.   

    oracle中实现,使用存储过程吧。可以结合shell。其他的不大会使用,谢谢!
      

  3.   

    plsql处理long raw倒是没有做过。
      

  4.   

    有大侠使用过long raw字段更新的吗?请指教,谢谢!
      

  5.   

    最好把long之类的转成lob, 否则以后你会遇到更多的麻烦的,
    如stream,  ldg之类的都不支持long raw  long这样的datatype
      

  6.   

    这个是第三方工具使用的一个字段,没法修改的。现在就是想在不修改字段的基础上能够将XML格式的文件内容更新到该字段里去。 论坛里有大侠提过使用blob对象,使用insert into A select * from B的方式将B中BLOB对象传入到A中的long raw 对象,但测试了下发现传到A中long raw对象中的数据有缺失不完整。请教各位就目前还有什么比较好的方式可以解决此问题?谢谢了先。
      

  7.   

    因为long类型的数值不能用insert into、select的方法插入,
    所以我们主要分两步来进行:
    先插入其它字段,然后再插入long类型字段,
    这可以通过过程来实现。下面我给你一个例子,如下:SQL> create table testlong (id number,name varchar2(12),history long); 表已创建。 SQL> create table testlong1 (id number,name varchar2(12),history long); 表已创建。 SQL> insert into testlong values(1,'dwh','work in foshan'); 已创建 1 行。 
    SQL> insert into testlong values(2,'sfg','work in guangzhou'); 已创建 1 行。 
    SQL> select * from testlong; ID NAME 
    ---------- ------------------------ 
    HISTORY 
    -------------------------------------------------------------------------------- 1 dwh 
    work in foshan 2 sfg 
    work in guangzhou SQL> insert into testlong1 select * from testlong; 
    insert into testlong1 select * from testlong 

    ERROR 位于第 1 行: 
    ORA-00997: 非法使用 LONG 数据类型 
    SQL> Declare 
    2 CURSOR bcur 
    3 IS SELECT id,history from testlong; 
    4 brec bcur%ROWTYPE; 
    5 BEGIN 
    6 insert into testlong1(id,name) select id,name from testlong;--其它类型先插入 
    7 OPEN bcur; 
    8 LOOP 
    9 FETCH bcur INTO brec; 
    10 EXIT WHEN bcur%NOTFOUND; 
    11 update testlong1 set history=brec.history where id=brec.id; 
    12 END LOOP; 
    13 CLOSE bcur; 
    14 END; 
    15 / PL/SQL 过程已成功完成。 SQL> select * from testlong1; ID NAME 
    ---------- ------------------------ 
    HISTORY 
    -------------------------------------------------------------------------- 1 dwh 
    work in foshan 2 sfg 
    work in guangzhou