Oracle數(shù)據(jù)庫在指定字段后新增字段代碼舉例
記錄一下數(shù)據(jù)庫中為表增加字段,且在指定字段后新增;
mysql數(shù)據(jù)庫的話比較簡(jiǎn)單通過一下sql語句即可實(shí)現(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ù)表并修改表明實(shí)現(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表新增字段后修改字段順序
工作中遇到:在為一個(gè)表新增字段后,新增字段在最后,想調(diào)整新增字段的位置。
1、原始方法:
--新建臨時(shí)表以存儲(chǔ)正確的順序 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; --刪除臨時(shí)表A_2 drop table A_2;
這種方法對(duì)字段較少的表來說還不會(huì)顯得太麻煩,但是對(duì)于字段較多的表來說就吃力了。
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去查詢?cè)摫碇械淖侄我约白侄涡蛱?hào)
select obj#,col#,name from sys.col$ where obj#=73626;
[4] 第二列便是字段的序號(hào),就可以用update語句來任意調(diào)整字段的順序了。
總結(jié)
到此這篇關(guān)于Oracle數(shù)據(jù)庫在指定字段后新增字段的文章就介紹到這了,更多相關(guān)Oracle指定字段新增字段內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Oracle實(shí)現(xiàn)分頁查詢的SQL語法匯總
這篇文章主要介紹了Oracle實(shí)現(xiàn)分頁查詢的SQL語法,非常實(shí)用的功能,需要的朋友可以參考下2014-08-08
解決ORA-01747:user.table.column,table.column或列說明無效
這篇文章主要介紹了解決ORA-01747:user.table.column,table.column或列說明無效的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07
Oracle Scott創(chuàng)建視圖權(quán)限不足解決辦法
大家安裝了oracle數(shù)據(jù)庫,按照oracle教程所說,使用scott用戶登錄,創(chuàng)建一個(gè)視圖,有沒有遇到錯(cuò)誤提示:權(quán)限不足!,今天就告訴大家如何解決!2015-10-10
Oracle數(shù)據(jù)庫ORA-28040:沒有匹配的驗(yàn)證協(xié)議解決辦法
這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫ORA-28040:沒有匹配的驗(yàn)證協(xié)議問題的解決辦法,ORA-28040是Oracle數(shù)據(jù)庫的錯(cuò)誤代碼,表示沒有匹配的驗(yàn)證協(xié)議,這通常是由于客戶端和服務(wù)器之間的身份驗(yàn)證協(xié)議不匹配導(dǎo)致的,需要的朋友可以參考下2024-03-03
oracle中使用group by優(yōu)化distinct
這篇文章主要介紹了oracle中使用group by優(yōu)化distinct的相關(guān)資料,需要的朋友可以參考下2015-11-11
Oracle數(shù)據(jù)庫的系統(tǒng)結(jié)構(gòu)
這篇文章主要介紹了Oracle數(shù)據(jù)庫的系統(tǒng)結(jié)構(gòu),Oracle數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)(Storage Structure)分為物理存儲(chǔ)結(jié)構(gòu)和邏輯存儲(chǔ)結(jié)構(gòu)兩種,分別描述了在操作系統(tǒng)中和數(shù)據(jù)庫系統(tǒng)內(nèi)部數(shù)據(jù)的組織管理方式,需要的朋友可以參考下2023-07-07
Oracle截取字符串去掉字段末尾指定長(zhǎng)度的字符
這篇文章主要介紹了Oracle截取字符串去掉字段末尾指定長(zhǎng)度的字符 的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-08-08
oracle 數(shù)據(jù)泵導(dǎo)入導(dǎo)出介紹
本文將介紹oracle數(shù)據(jù)泵導(dǎo)導(dǎo)出步驟詳細(xì)介紹,需要的朋友可以參考下2012-12-12

