欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oracle數(shù)據(jù)庫在指定字段后新增字段代碼舉例

 更新時間:2023年09月15日 10:49:46   作者:alutimo  
很多時候數(shù)據(jù)庫中已有表的字段與需求業(yè)務(wù)所需字段有差異,需要增加一個或多個字段,這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫在指定字段后新增字段的相關(guān)資料,需要的朋友可以參考下

記錄一下數(shù)據(jù)庫中為表增加字段,且在指定字段后新增;

mysql數(shù)據(jù)庫的話比較簡單通過一下sql語句即可實現(xiàn):

-- 為表t在B字段后新增字段
alter table t add column fild varchar(20) nou null after B
-- 為表t新增字段并顯示到第一位
alter table t add column fild varchar(20) nou null first

而Oracle數(shù)據(jù)庫不支持上述語法,添加字段只能顯示到最后一位,所以如果非要添加字段到指定字段后的話可以通過新建數(shù)據(jù)表并修改表明實現(xiàn),如下面語句所示:

-- 首先為要新增字段的表A新增字段t
ALTER TABLE A ADD (t VARCHAR2(64));
--根據(jù)新增字段后的表A來創(chuàng)建表B,并根據(jù)A的查詢控制字段顯示位置
create table B as select a,b,e,c,d from A;
-- 刪除掉原表A
drop table A;
-- 將新建的表B重命名為表A的名字
alter table B rename to A

附:Oracle表新增字段后修改字段順序

工作中遇到:在為一個表新增字段后,新增字段在最后,想調(diào)整新增字段的位置。

1、原始方法:

--新建臨時表以存儲正確的順序 
create table A_2 as select (column1,colum2,……A表中的順序) from A_1 ;
--刪除表A_1 
drop table A_1;
--新建A_1并從A_2表中賦予其正確的順序和值 
create table A_1 as select * from A_2; 
--刪除臨時表A_2 
drop table A_2;

這種方法對字段較少的表來說還不會顯得太麻煩,但是對于字段較多的表來說就吃力了。

2、利用系統(tǒng)數(shù)據(jù)庫

[1] 首先,以sys用戶的身份登錄PL/SQL

[2] 查詢出你要更改的表的ID,以我本地的數(shù)據(jù)為例,我要改'FINACE'用戶下'INCOME'這張表。注:ORACLE中的表要用大寫。

select object_id from all_objects where owner = 'FINACE' and object_name = 'INCOME' ;

[3] 根據(jù)id去查詢該表中的字段以及字段序號

select obj#,col#,name from sys.col$ where obj#=73626; 

[4] 第二列便是字段的序號,就可以用update語句來任意調(diào)整字段的順序了。

總結(jié) 

到此這篇關(guān)于Oracle數(shù)據(jù)庫在指定字段后新增字段的文章就介紹到這了,更多相關(guān)Oracle指定字段新增字段內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論