Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Changing Datatype from Varchar2 to Number
> Hi,
>
> I thought that I would be able to do this without too many problems
> but it seems I was wrong. What I have is the following
>
> tableA
>=======
Are you using oracle 9i, then try this:
create table tableA (
col1 Varchar2(3),
col2 Number primary key,
col3 Number(6)
);
insert into tableA values ('1',1,1); insert into tableA values ('2',2,2); insert into tableA values ('3',3,3); insert into tableA values ('4',4,4);
commit;
create table tableA_temp (
col1 Number(20),
col2 Number primary key,
col3 Number(3)
);
begin
dbms_redefinition.start_redef_table(
user,
'tableA', 'tableA_temp', 'to_number(col1) col1, col2 col2, col3 col3');
dbms_redefinition.sync_interim_table(
user,
'tableA',
'tableA_temp');
dbms_redefinition.finish_redef_table(
user,
'tableA',
'tableA_temp');
end;
/
drop table tableA_temp;
desc tableA;
select * from tableA;
hth
Rene Nyffenegger
-- Projektleitung und Entwicklung in Oracle/C++/C# Projekten http://www.adp-gmbh.ch/cv.htmlReceived on Tue Jul 01 2003 - 02:23:11 CDT
![]() |
![]() |