create table new_table_name as select * from tab1;
delete from tab1;
commit;
alter table tab1 modify (aa varchar2(20));
insert into tab1 select * from new_table_name;
delete from tab1;
commit;
alter table tab1 modify (aa varchar2(20));
insert into tab1 select * from new_table_name;
你aa字段数据类型为Number(14),更改数据字段类型为VarChar2(20),
这样你的长度已经打过原先Number(14),这样数据就不会丢失。
直接发语句。
ALTER TABLE tab1 MODIFY (AA VarChar2(20));
不放心,你就可以建立个临时表做备份。
create table a as select * from tab1;
这样你就放心去做吧。
ALTER TABLE tab1 MODIFY (AA VarChar2(20))
update tbname set col=to_char(aa);
我采用了tcmis(肖锋)的方法,他的方法比较通俗易懂。
另外beckhambobo(beckham)的回复也起到很大的作用。
还有就是 LGQDUCKY(飘) 他帮助我很多的问题。
谢谢大家!!