Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: anydata datatype update help
Rachel,
The following worked for me:
create or replace type person as object (
last_name varchar2(20)
,first_name varchar2(20)
);
/
create table rc (
id number
, person_data sys.anydata
)
/
insert into rc ( id, person_data )
values (1, sys.anydata.ConvertObject(Person('Still','Jared')))
/
commit;
update rc set person_data =
sys.anydata.ConvertObject(Person('Still','Carla'))
where id = 1
/
commit;
There are examples in the Application Developers Guide.
Jared
Rachel Carmichael <wisernet100_at_yahoo.com>
Sent by: root_at_fatcity.com
10/04/2002 06:33 AM
Please respond to ORACLE-L
To: Multiple recipients of list ORACLE-L <ORACLE-L_at_fatcity.com> cc: Subject: anydata datatype update help
the subject line pretty much describes it.
9.2.0.1, Solaris 2.8
We are using the ANYDATA datatype and while we have no problems with insert or select or delete, the process blows up (ora-7445, coredump) when we try to update the ANYDATA column. Within a PL/SQL process, using aliased tablenames and bind variables for all values:
UPDATE MI.T_IN03_ObjPrpty
SET IN03_Value_AD = :b7
,IN03_Seq_NO = :b6
,RF01_Publisher_KY = :b5
,IN03_Amend_DT = :b4
,RF02_Status_KY = :b3
,IN03_Status_DT = :b2
WHERE IN03_ObjPrpty_KY = :b1 IN03_Value_AD is the ANYDATA column. Statement works fine if we remove that column. Statement blows up if we remove all OTHER columns or if we run it as is.
We've posted an iTAR and are waiting. I've searched MetaLink and the docs. Nothing useful.
But the search of the docs left me with a suspicion that you can't update an ANYDATA column.
Has anyone either successfully updated an ANYDATA column or found documentation somewhere that says you can't?
this is stopping development on a critical system. I'm not the primary DBA on it, but the consultant DBA doesn't have access to MetaLink and isn't on this list so I'm helping out.
Suggestions? Worst case I suppose we could delete the original row and insert the new one but that's kludgy and messy and an additional performance hit on a system that needs to "fly like the wind". I'd rather fix this properly... of course Oracle is capable of saying that the delete and insert IS the workaround and/or standard procedure for this.
Rachel
-- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Rachel Carmichael INET: wisernet100_at_yahoo.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: INET: Jared.Still_at_radisys.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Fri Oct 04 2002 - 12:24:03 CDT
![]() |
![]() |