急急急!!! oracle中怎样在特定的列后添加新的列

急急急!!! oracle中怎样在特定的列后添加新的列,第1张

alter table table_name add (e number(4))

oracle中不能在某列前后固定插入,只会在最后列中追加

插入新列不影响前面的数据

其实列的顺序是无所谓的,你查找的时候select a,b,e,c,d from A 不就可以了么

如果你非要这样那只能复制新的A表到B表,然后删除掉A表,并重命名B表,如:

create table B as select a,b,e,c,d from A

drop table A

alter table B rename A

添加列的语法是:

alter table table_name add (w number(4),y number(4))

但是你是无法控制新增的列在1,2,3,4,5前面。只能采用变通的方法;

1 如上先把列添加上。

2 然后

create table table_name1 select (A,B,C...,W,Y,1,2,3,4,5) from table_name

3 drop table table_name

4 alter table table_name1 rename table_name

------------------------------补充------------------------------------

就我所了解看来,你必须这样做。

你的列很多?有多少?有1000个吗?

表中列的顺序并不重要。你如果非要达到这种效果那么不得不付出代价。比如说:像上面将每个列都写上去。。。

数据不会丢失。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/sjk/9893286.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存