在oracle資料庫中,我們會因為一些需求或其他原因要修改資料庫的字段屬性,但是直接用語句:
alter table test_table modify (test_age number (3) default null );
會出現以下的錯誤日誌:
這是因為資料庫中,該列已經有資料了,我們需要寫以下語句就能解決此問題了:
--修改原欄位名test_age為test_age_tmp
alter table test_table rename column name to test_age_tmp;
--增加乙個和原欄位名同名的字段test_age
alter test_table add test_age number(3);
--將原欄位test_age_tmp資料更新到增加的字段test_age
update test_table set test_age=trim(test_age_tmp);
--更新完,刪除原欄位test_age_tmp
alter table test_table drop column test_age_tmp;
應該就可以 Oracle資料庫修改主鍵
一 資料表有主鍵但無主鍵約束名 先刪除之前的主鍵,後新增主鍵 a.alter table 表名 drop primary key b.alter table 表名 add primary key 想要更改的欄位名稱 二 資料表有主鍵也有主鍵約束名 1 刪除已有的主鍵約束名 a.若已知主鍵約束名 al...
oracle 資料庫修改列型別
新增備份字段 alter table acc accitem add back type char 1 備份字段 update acc accitem t set t.al type null t.back type decode al type,1 a 2 l 3 e 4 i 5 p 6 o 7 ...
修改oracle資料庫的名字
最近閒來無事,決定修改一下資料庫的名字,記得曾經學過通過重建控制檔案來修改資料庫的名字,網上找了下也可以通過oracle自帶的nid修改資料庫的名字,不過這個方法有些麻煩,並且修改的資料庫名字不能帶 1,通過重建控制檔案修改資料庫名字。為了方便查詢trace檔案我們在進行備份控制檔案的時候我們可以標...