alter table table_name add (e number(4));
站在用戶的角度思考問題,與客戶深入溝通,找到硚口網(wǎng)站設(shè)計與硚口網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、主機(jī)域名、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋硚口地區(qū)。
oracle中不能在某列前后固定插入,只會在最后列中追加
插入新列不影響前面的數(shù)據(jù)
其實列的順序是無所謂的,你查找的時候select a,b,e,c,d from A 不就可以了么
如果你非要這樣那只能復(fù)制新的A表到B表,然后刪除掉A表,并重命名B表,如:
create table B as select a,b,e,c,d from A
drop table A
alter table B rename A
沒有這樣的命令啊,新加列只能在最后,除非刪表重建!
再說只是顯示的問題,沒什么關(guān)系的,實在不行寫查詢語句的時候,寫在前面就好唄!
添加列的語法是:
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;
------------------------------補(bǔ)充------------------------------------
就我所了解看來,你必須這樣做。
你的列很多?有多少?有1000個嗎?
表中列的順序并不重要。你如果非要達(dá)到這種效果那么不得不付出代價。比如說:像上面將每個列都寫上去。。。
數(shù)據(jù)不會丟失。
首先,表的字段的物理位置是固定的
就是現(xiàn)在是ID NAME DEPT_ID的順序不能改變,頂多是可以把薪水加到最后一列
增加一個字段的方法,看你是用的oracle
alter?table?s_emp?add?薪水?number(10,2);
薪水那倆字你替換成你想改的英文名稱吧
另外如果你非讓它顯示在ID和NAME中間,只能在查詢中做到,否則就得全表刪除重建
select?id,薪水,name,dept_id?from?s_emp;
第一種方法:企業(yè)管理器-〉設(shè)計表-〉右鍵第4列-〉插入列
第二種方法:SQL語句,沒有直接在指定位置插入的語句,不過我考慮的語句很簡單
1.新建一張表,原來是abcde,現(xiàn)在新建為abcXde,X是插入的列
2.把原來abcde中的數(shù)據(jù)全部插入新表中
3.刪除舊表abcde
update table
set 新增列=’值‘
where
或者
insert into table (新增列) values(值)