遇到專案,原來是資料型別不能滿足當前需求,要保留舊資料的前提下修改(或擴大)某一列的資料型別
在oracle資料庫中,有資料的列是不能被修改的,思路是這樣的
(1)在原資料表中增加新列,新列的列名只要不同的行,這個新列的資料型別就是目標資料型別
(2)轉移資料,將舊列的資料儲存到新列中
(3)刪除舊列
(4)修改新列列名為之前刪去的舊列列名。
提交!來,舉個栗子
alter table tablename add (newname number(10,2) );
update tablename tr set newname=(
select t.oldname from tablename t
where t.id=tr.id
);alter table tablename drop (oldname);
alter table tablename rename column newname to oldname;
當然如果需要修改的列沒有資料,那就簡單多。oracle庫表修改資料型別
1 重新命名要修改的欄位名,如colname改為mycolname,alter table tablename rename column colname to mycolname 2 在表中新增乙個原欄位名字 colname並把型別定義為自己想改變的資料型別 這裡是date資料型別 alter t...
Oracle 修改資料型別clob
怎麼樣將oracle資料庫表中字段的varchar2型別轉為clob型別 第一步,清空要操作的表 如有資料不能進行表結構的修改 sql truncate table sys category 第二步,先將操作的表中descript欄位,轉換成long,再將long型別轉成clob型別 不知為何不能直...
sql修改資料 oracle修改資料庫字符集
1.檢視資料庫字符集 資料庫伺服器字符集 select from nls database parameters 其 於props 是表示資料庫的字符集。客戶端字符集環境 select from nls instance parameters 其 於v parameter,表示客戶端的字符集的設定,...