oracle 字段全大寫,Oracle如何批量將表中字段名全轉換為大寫(利用簡單存儲過程)...

前言

今天查詢一個數據字段一直提示字符無效,明明在數據庫表字段中是存在的;

查詢后得知,數據庫表字段為小寫時,查詢需要將字段名小寫并加上雙引號;

表名同理,我這里表名是大寫,暫時不需要改。

搜到一個批量修改字段名為大寫的存儲過程,如下:

登陸到要修改的用戶下,

執行:

begin

for cl in (SELECT table_name,column_name from user_tab_columns WHERE column_name<>upper(column_name) and upper(column_name) not in('SIZE','CHECK')) loop

begin

execute immediate 'alter table '||cl.table_name||' rename column "'|| cl.column_name ||'" to '||upper(cl.column_name);

exception

when others then

dbms_output.put_line(cl.table_name||'.'||cl.column_name||'已存在');

end;

end loop;

end;

即完成該用戶下所有表字段名改為大寫的過程。

附上批量修改表名為大寫的存儲過程,以備后用:

-- oracle 批量修改表名為大寫(當前登錄用戶)

begin

for c in (select table_name tn from user_tables where table_name <> upper(table_name)) loop

begin

execute immediate 'alter table "'||c.tn||'" rename to '||c.tn;

exception

when others then

dbms_output.put_line(c.tn||'已存在');

end;

end loop;

end;

再附 字段類型批量修改(此時表內無內容):

DECLARE

CURSOR TEMP IS SELECT TABLE_NAME,COLUMN_NAME,DATA_LENGTH FROM USER_TAB_COLUMNS WHERE DATA_TYPE = 'NVARCHAR2' AND ROWNUM < 100;

STR VARCHAR2(100) := '';

BEGIN

FOR S IN TEMP LOOP

STR := 'ALTER TABLE '||S.TABLE_NAME||' MODIFY('||S.COLUMN_NAME||' VARCHAR2(200))';

DBMS_OUTPUT.PUT_LINE(STR);

EXECUTE IMMEDIATE STR ;

END LOOP;

END;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/530845.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/530845.shtml
英文地址,請注明出處:http://en.pswp.cn/news/530845.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

oracle的al32utf8,oracle字符集修改(AL32UTF8-UTF8)

author&#xff1a;skatetime&#xff1a;2012/04/10AL32UTF8->UTF8步驟shutdown immediate;startup mount;alter session set sql_tracetrue;alter system enable restricted session;alter system set job_queue_processes0;alter system set aq_tm_processes0;alter data…

javascript date php date,JavaScript Date 知識淺析

Date函數new Date()Date 對象會自動把當前日期和時間保存為其初始值。date.getDate()從 Date 對象返回一個月中的某一天 (1 ~ 31)。date.getDay()從 Date 對象返回一周中的某一天 (0 ~ 6)。周日是0。date.getMonth()從 Date 對象返回月份 (0 ~ 11)。date.getFullYear()從 Date …

16字節 oracle md5,Oracle中的MD5加密

因為要用到MD5加密&#xff0c;所以在網上搜了一下相關資料&#xff0c;并進行仔細研究。其核心就是MD5編碼的數據包函數&#xff1a;DBMS_OBFUSCATION_TOOLKIT.M因為要用到MD5加密&#xff0c;所以在網上搜了一下相關資料&#xff0c;并進行仔細研究。其核心就是MD5編碼的數據…

ip字符串轉換 linux,Linux網絡編程入門

在日常使用&#xff0c;我們更多的使用十進制字符串表示IP地址&#xff0c;比如192.169.130.66&#xff0c;而不是記憶32位的IP地址(關鍵是太長了記不住呀)&#xff0c;使用字符串IP更為方便&#xff0c;可讀性也更好。但是根據上述in_addr定義&#xff0c;網絡編程中需要的是網…

linux php目錄是否存在,PHP判斷文件或者目錄是否可寫,兼容windows/linux系統

在PHP中&#xff0c;可用is_writable()函數來判斷一個 文件/目錄 是否可寫&#xff0c;用是否可生成文件的方式判斷目錄是否可寫&#xff1b;網上的一些代碼大多數能判斷linux系統&#xff0c;但windows服務器下判斷不準確。下面的代碼兼容windows和linux判斷文件或目錄是否可寫…

linux 腳本 發送郵件,shell 腳本發送郵件

有時候會使用腳本完成一系列的自動化工作&#xff0c;工作完成后還需要郵件通知相關人員&#xff0c;此時可以使用第三方的工具&#xff1a;SendEmail,最新版本sendEmail-v1.56.tar.gz下載地址&#xff1a;http://caspian.dotconf.net/menu/Software/SendEmail/sendEmil的使用范…

link linux 跨設備,Linux中的兩種link方式

Linux系統中包括兩種鏈接方式&#xff1a;硬鏈接(hard link)和符號鏈接(symbolic link)&#xff0c;其中符合鏈接就是所謂的軟鏈接(soft link)&#xff0c;那么兩者之間到底有什么區別呢&#xff1f;inode在Linux系統中&#xff0c;內核為每一個新創建的文件分配一個inode&…

linux 運行ca.crt,linux下使用openssl生成 csr crt CA證書,opensslcsr

linux下使用openssl生成 csr crt CA證書&#xff0c;opensslcsr本文主要借鑒和引用了下面2個地址的內容&#xff0c;然后在自己的機器上進行了測試和執行&#xff0c;并做了如下記錄。ref:http://blog.chinaunix.net/uid-26760055-id-3128132.htmlhttp://www.111cn.net/sys/lin…

linux cpu核數和線程數,cpu個數、核數和線程的理解

1.查看物理cpu個數grep physical id /proc/cpuinfo | sort -u | wc -l2.查看核心數量grep core id /proc/cpuinfo | sort -u | wc -l3.查看線程數grep processor /proc/cpuinfo | sort -u | wc -lcat /proc/cpuinfo 查看文件里面關鍵信息processor : 23 ----------代表…

linux設置超鏈接,幫助-鏈接 - Linux Kernel Newbies

this page is outdated and needs to be fixed參考鏈接形式語法備注內部鏈接WikiNameCamelCase page name內部自由鏈接["Page"] or ["free link"]可配置函數內部子頁面鏈接/SubPage or ["/Sub page"]相對于上一級頁面外部鏈接http://example.net…

linux 文件系統cache,終于找到一篇詳解Linux文件系統Cache的文章

級別&#xff1a; 初級2006 年 5 月 11 日文件 Cache 管理是 Linux 內核中一個很重要并且較難理解的組成部分。本文詳細介紹了 Linux內核中文件 Cache 管理的各個方面&#xff0c;希望能夠對開發者理解相關代碼有所幫助。自從誕生以來&#xff0c;Linux 就被不斷完善和普及&…

寶塔Linux怎么安裝Mariadb,如何在linux上面安裝mariadb總結

1、下載MariaDB(mariadb-5.5.31.tar.gz)[rootzabbix_server opt]# wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz2、安裝MariaDB[rootzabbix_server opt]# tar xzvf mariadb-5.5.31.tar.gz[rootzabbix_server cmake-2.8.5]# cd cmake-2.8.5[rootzabbix_server cmak…

c語言數碼管加法程序怎么寫,拜托大神寫數碼管與矩陣鍵盤結合設計簡易計算器C語言的程序...

我和你用的是一樣的&#xff0c;給你一個我買板子送的矩陣程序//4*4鍵盤檢測程序,按下鍵后相應的代碼顯示在數碼管上#includesbit beepP2^3;sbit dulaP2^6;sbit welaP2^7;unsigned char i100;unsigned char j,k,temp,key;void delay(unsigned char i){for(ji;j>0;j--)for(k1…

七橋問題c語言程序數據結構,數據結構與算法學習——圖論

什么是圖&#xff1f;在計算機程序設計中&#xff0c;圖結構也是一種非常常見的數據結構但是圖論其實是一個非常大的話題圖結構是一種與樹結構有些相似的數據結構圖論是數學的一個分支&#xff0c;并且在數學概念上&#xff0c;樹是圖的一種它以圖為研究對象&#xff0c;研究頂…

c語言式表白,c語言表白必備

c語言表白必備七夕情人節表白必備&#xff0c;多顏色心形展示看圖#include#include#include#include #define r 10#define R 172int main(){int i;printf("我");fflush(stdout); //強制刷新緩存&#xff0c;輸出顯示Sleep(1000);printf("自");fflush(stdou…

《c#編程語言詳解》,C#編程語言詳解(第2版)

前言前 言C#項目啟動于七年前——1998年12月&#xff0c;其目標是為全新的并命名為.NET的平臺創建一種簡單、現代、面向對象和類型安全的程序設計語言。從那時起&#xff0c;C#已經走過了漫長的道路。現在&#xff0c;成千上萬的程序員在使用C#語言&#xff1b;ECMA和ISO/IEC已…

明解c語言中級篇微盤,明解C語言:中級篇

第1章 猜數游戲  11-1 猜數判定  2通過if語句實現條件分支  2if語句的嵌套  3實現多分支的方法  41-2 重復到猜對為止  8通過do語句循環  8相等運算符和關系運算符  9通過while語句循環  10break語句  10while語句和do語句  11先判斷后循環和先循環后…

共同體不是c語言中的一個數據類型,《c語言程序設計教學資料》第12章---構體和共同體.ppt...

《c語言程序設計教學資料》第12章---構體和共同體向函數傳遞結構體 用結構體指針或結構體數組作為函數參數&#xff0c;向函數傳遞結構體的地址 按值調用 按地址調用 結構體變量作函數參數 實現按值調用 結構體指針作函數參數 從函數返回 結構體變量的值 共用體 共用體所占內存…

android中gradle的作用,Gradle 之 Android 中的應用

在上一篇文章中 Gradle 之語言基礎 Groovy 主要介紹了 Groovy 的基礎語法(如果沒有 Groovy 的基礎&#xff0c;建議先看看上篇文章&#xff0c;如果可以動手敲一下里面的示例代碼就更好不過了)&#xff0c;也是為本篇文章打基礎的。本篇文章主要介紹 Gradle 在 Android 中的應用…

android程序更改pdf文件格式,Android根據pdf模板生成pdf文件

1 public voidFillPdfTemplate(String id) {2 android.icu.text.SimpleDateFormat simpleDateFormat 3 new android.icu.text.SimpleDateFormat("HHmmss");//HH:mm:ss4 //設置默認時區5 simpleDateFormat.setTimeZone(android.icu.util.TimeZone.getTimeZone("G…