首頁> 資料庫> Oracle> 主體

oracle怎麼轉換字段類型

青灯夜游
發布: 2022-03-02 17:18:06
原創
11907 人瀏覽過

在oracle中,可以利用「ALTER TABLE MODIFY」語句來轉換欄位類型,語法為「ALTER TABLE table_name MODIFY(欄位名稱 新資料類型)」。

oracle怎麼轉換字段類型

本教學操作環境:Windows7系統、Oracle 11g版、Dell G3電腦。

在oracle中,可以利用「ALTER TABLE MODIFY」語句來變更現有資料列的定義,例如修改欄位類型。

語法格式:

ALTER TABLE table_name MODIFY(字段名称 新数据类型)
登入後複製

例如:有一個表名為tb,字段段名為name,資料類型nchar(20)。

1、假設欄位資料為空,則不管改為什麼欄位類型,可以直接執行:

alter table tb modify (name nvarchar2(20));
登入後複製
登入後複製

2、假設欄位有數據,則改為nvarchar2(20)可以直接執行:

alter table tb modify (name nvarchar2(20));
登入後複製
登入後複製

3、假設字段有數據,則改為varchar2(40)執行時會彈出:“ORA-01439:要更改數據類型,則要修改的列必須為空”,這時要用下面方法來解決這個問題:

/*修改原字段名name为name_tmp*/ alter table tb rename column name to name_tmp; /*增加一个和原字段名同名的字段name*/ alter table tb add name varchar2(40); /*将原字段name_tmp数据更新到增加的字段name*/ update tb set name=trim(name_tmp); /*更新完,删除原字段name_tmp*/ alter table tb drop column name_tmp;
登入後複製

總結:

1、當欄位沒有資料或要修改的新型別和原型別相容時,可以直接modify修改。

2、當欄位有資料並用要修改的新型別和原型別不相容時,要間接新建欄位來轉移。

推薦教學:《Oracle教學

以上是oracle怎麼轉換字段類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!