Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

problems converting teradata to ORACLE tbls

Status
Not open for further replies.

RanD

Programmer
Aug 28, 2002
25
US
Hello -

I'm trying to take some information from TERADATA to ORACLE.

The TERADATA data type I'm trying to take to ORACLE is as follows:
IndexStatistics VARBYTE(16383) FORMAT 'X(255)',

I put this into a staging table in ORACLE as follows:
IndexStatistics LONG RAW,

while this works flawlessly (i.e., I'm able to do the full insert/select from Teradata to ORACLE. When I try and move this value from the staging table to the target table:
IndexStatistics LONG RAW ======> IndexStatistics LONG RAW

I get an error from ORACLE that I've attempted to do an invalid operation on a LONG data type.

I don't understand how this can be. I inserted the value from Teradata into LONG RAW format. It worked. So how can moving from LONG RAW to LONG RAW fail?

I know this may be an ORACLE issue more than a TERADATA issue, but I thought that maybe someone might be able to help me out.

Thanks in advance.

Randy

 
Can't help you, but what information are you trying to extract from the statistics?

Dieter
 
Hi,
The INDEXSTATISTICS is an internal Data dictionary field.

It contains the results of the COLLECT STATISTICS command.

I assume oracle has its own information stored internally from this command.

Therefore once you transfer the primary data tables you want and recreate the indexes within the oracle database you will collect statistics there.

 
Hi,

U cannot insert a long raw column to any table directly in Oracle.
U have got to use PL/SQL to get it done..

an example would be like :

create or replace procedure 12vc
is
cursor c0 is
select rowid, long_column
from table_name
begin
for c1 in c0 loop
update table_name
set varchar_column = c1.long_column
where rowid = c1.rowid;
end loop;
end;

Hope this helps
Mukesh.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top