Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Transferring LONG RAW from TAB1 to TAB2
In article <37E10FD1.F00D0715_at_theleme.com>,
Yann Chevriaux <chevriaux_at_theleme.com> wrote:
> I would to know how to copy a LONG RAW column from a table to another.
>
> The following based function failed with:
> ORA-00997: illegal use of LONG datatype
>
> function ArchiveRawData(dataId in number)
> return number
> is
> newArcId number;
> begin
> newArcId := NewId; -- NewId is a based function that return an UID
>
> insert into rawArchive (id, rawdata)
> select newArcId, rawdata
> from rawCurrent
> where id = dataId;
>
> return newArcId;
>
> end;
>
> I thought it could be a PL/SQL limitation but even with a simple SQL
> statement it fail as well.
>
> Configuration: NTServer; Oracle 7.3.2
>
> Please help !!!
>
>
Use PL/SQL instead :
function ArchiveRawData(dataId in number)
return number
is
newArcId number;
newData rawCurrent.rawdata%TYPE;
begin
newArcId := NewId; -- NewId is a based function that return an UID
select rawdata into newData from rawCurrent where id = dataId;
insert into rawArchive (id, rawdata) values(newArcId,newData);
return newArcId;
end;
Good luck. Michael.
Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.
Received on Fri Sep 17 1999 - 16:05:39 CDT
![]() |
![]() |