Oracle如何獲取指定表名稱批量修改表中的字段類型
一、業(yè)務(wù)需求
在進(jìn)行業(yè)務(wù)開發(fā)過程中,需要實(shí)現(xiàn)獲取到Oracle中指定數(shù)據(jù)庫下的指定表,然后對(duì)這些指定的表修改字段類型,比如需要將類型Varchar2的大小從100修改為200。
二、思路分析
①獲取到Oracle中指定數(shù)據(jù)庫下的指定表;
②修改指定表的類型sql;
③遍歷執(zhí)行修改不同表的指定字段類型;
三、實(shí)現(xiàn)方法
3.1、獲取到Oracle中指定數(shù)據(jù)庫下的指定表
獲取所有表信息
| 序號(hào) | 獲取所有表sql | 說明 |
| 1 | SELECT * FROM dba_tables; | 可以查看所有表信息(即所有系統(tǒng)表+所有用戶表); 具有【可以訪問DBA_TABLES數(shù)據(jù)字典視圖】權(quán)限; 或DBA授予您SELECT ANY DICTIONARY特權(quán)或SELECT_CATALOG_ROLE角色(其中任何一個(gè)都允許您查詢?nèi)魏螖?shù)據(jù)字典表) |
| 2 | select * from all_tables; | 可以查看所有用戶的表 |
| 3 | select * from user_tables; | 可以查看當(dāng)前用戶的所有表 |
| 4 | select * from user_tab_columns; | 可以查看到所有用戶的表結(jié)構(gòu)信息 |
3.2、修改指定表的類型sql
表字段的操作
| 序號(hào) | 表字段的操作SQL | 說明 |
| 1 |
| ①給test_People表添加一個(gè)新字段workAddress類型為varchar2且大小為100; ②給test_People表添加2個(gè)新字段(workAddress類型為varchar2且大小為100;telNumber類型為varchar2且大小為11) |
| 2 | alter table test_People rename column TYPENAME to testname; | 將test_People表的TYPENAME列名稱修改為testname |
| 3 | update test_People set testname=TYPENAME; | 將test_People表中的TYPENAME列的數(shù)據(jù)更新到testname列中 |
| 4 | alter table test_People modify TYPENAME VARCHAR2(200); | 將test_People表中的TYPENAME列修改為Varchar2類型且大小為200 |
| 5 | alter table test_People drop column testname; | 將test_People表中的testname列刪除 |
3.3、遍歷執(zhí)行修改不同表的指定字段類型
--首先查詢出當(dāng)前用戶下的所有以test開頭的表的表名稱,然后使用FOR函數(shù)遍歷出每個(gè)test開頭的表名稱執(zhí)行修改每個(gè)test開頭表中TYPENAME列的字段類型為VARCHAR2且大小為200 BEGIN FOR r IN (select TABLE_NAME from user_tables WHERE TABLE_NAME like 'test%') LOOP execute immediate 'ALTER table '|| r.TABLE_NAME ||' MODIFY TYPENAME VARCHAR2(200)'; END LOOP; END;
--FOR函數(shù)的語法 FOR var IN 1..10 LOOP statement_list END LOOP;
總結(jié)
到此這篇關(guān)于Oracle如何獲取指定表名稱批量修改表中的字段類型的文章就介紹到這了,更多相關(guān)Oracle獲取指定表名稱內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Linux一鍵部署oracle安裝環(huán)境腳本(推薦)
這篇文章主要介紹了Linux一鍵部署oracle安裝環(huán)境腳本,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01
深入探討:Oracle中如何查詢正鎖表的用戶以及釋放被鎖的表的方法
本篇文章是對(duì)Oracle中查詢正鎖表的用戶以及釋放被鎖的表的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
ORACLE正則匹配查詢LIKE查詢多個(gè)值檢索數(shù)據(jù)庫對(duì)象
這篇文章主要介紹了ORACLE正則匹配查詢,LIKE查詢多個(gè)值檢索數(shù)據(jù)庫對(duì)象,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
window10 安裝Oracle19C 和SQL Developer 的圖文教程
這篇文章主要介紹了window10 安裝Oracle19C 和SQL Developer 教程(圖文詳解),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03
Oracle數(shù)據(jù)庫 DGbroker三種保護(hù)模式的切換
這篇文章主要介紹了Oracle數(shù)據(jù)庫 DGbroker三種保護(hù)模式的切換 的相關(guān)資料,需要的朋友可以參考下2015-12-12
在Oracle表中進(jìn)行關(guān)鍵詞搜索的過程
這篇文章主要介紹了在Oracle表中進(jìn)行關(guān)鍵詞搜索的過程,我們可以通過Oracle?SQL?Developer或Toad運(yùn)行PL/SQL塊,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06

