zoukankan      html  css  js  c++  java
  • 【Oracle】表名/列名,大/小写转换

    1、表名,小写转大写。如下:my_test转换MY_TEST

    DECLARE
        v_tablename_x VARCHAR2(20);
        v_tablename_d VARCHAR2(20);
    begin
        v_tablename_x:='my_test';
        v_tablename_d:='MY_TEST';
        execute immediate 'alter table "'||v_tablename_x||'" rename to '||v_tablename_d||'';
    exception
        when others then
        dbms_output.put_line(v_tablename_d||'已存在');
    end;

    2、列名,小写转大写

    DECLARE
        v_tablename_d VARCHAR2(20);
    
    begin
        v_tablename_d:='MY_TEST';
        for c in (select COLUMN_NAME cn from all_tab_columns where table_name=v_tablename_d) loop
        begin
            execute immediate 'alter table "'||v_tablename_d||'" rename column "'||c.cn||'" to '||c.cn;
            exception
            when others then
            dbms_output.put_line(v_tablename_d||'.'||c.cn||'已经存在');
        end;
        end loop;
    end;

    3、表和列一起,小写转大写

    DECLARE
        v_tablename_x VARCHAR2(20);
        v_tablename_d VARCHAR2(20);
    
    begin
        v_tablename_x:='my_test';
        v_tablename_d:='MY_TEST';
        for c in (select COLUMN_NAME cn from all_tab_columns where table_name=v_tablename_x) loop
        begin
            execute immediate 'alter table "'||v_tablename_x||'" rename column "'||c.cn||'" to '||c.cn;
            exception
            when others then
            dbms_output.put_line(v_tablename_x||'.'||c.cn||'已经存在');
        end;
        end loop;
    
        execute immediate 'alter table "'||v_tablename_x||'" rename to '||v_tablename_d||'';
        exception
        when others then
        dbms_output.put_line(v_tablename_d||'已存在');
    end;

    4、表和列一起,大写转小写

    DECLARE
        v_tablename_x VARCHAR2(20);
        v_tablename_d VARCHAR2(20);
    
    begin
        v_tablename_x:='my_test';
        v_tablename_d:='MY_TEST';
    
        for c in (select COLUMN_NAME cn from all_tab_columns where table_name=v_tablename_d) loop
            begin
                execute immediate 'alter table '||v_tablename_d||' rename column '||c.cn||' to "'||LOWER(c.cn)||'"';
                exception
                when others then
                dbms_output.put_line(v_tablename_d||'.'||c.cn||'已经存在');
            end;
        end loop;
    
        execute immediate 'alter table '||v_tablename_d||' rename to "'||v_tablename_x||'"';
        exception
        when others then
        dbms_output.put_line(v_tablename_x||'已存在');
    end;

    5、列名,大写转小写

    DECLARE
        v_tablename_d VARCHAR2(20);
    
    begin
        v_tablename_d:='MY_TEST';
    
        for c in (select COLUMN_NAME cn from all_tab_columns where table_name=v_tablename_d) loop
            begin
                execute immediate 'alter table '||v_tablename_d||' rename column '||c.cn||' to "'||LOWER(c.cn)||'"';
                exception
                when others then
                dbms_output.put_line(v_tablename_d||'.'||c.cn||'已经存在');
            end;
        end loop;
    end;

    6、表名,大写转小写

    DECLARE
        v_tablename_x VARCHAR2(20);
        v_tablename_d VARCHAR2(20);
    
    begin
        v_tablename_x:='my_test';
        v_tablename_d:='MY_TEST';
    
        execute immediate 'alter table '||v_tablename_d||' rename to "'||v_tablename_x||'"';
        exception
        when others then
        dbms_output.put_line(v_tablename_x||'已存在');
    end;
  • 相关阅读:
    [Leetcode] 221. Maximal Square
    [翻译] TensorFlow Programmer's Guide之Frequently Asked Questions(问得频率最多的几个问题)
    [Kaggle] dogs-vs-cats之模型训练
    [Kaggle] dogs-vs-cats之建立模型
    [Kaggle] dogs-vs-cats之制作数据集[1]
    Linux虚拟机Centos 设置固定的静态IP
    linux IP动态变动之后 , 需要做的杂项操作
    GitBlit (1)-- 在linux 安装 GitBlit 并运行
    Linux 安装SVN
    微信开发(3) -- 支付后接收回调信息测试
  • 原文地址:https://www.cnblogs.com/xiaostudy/p/14240256.html
Copyright © 2011-2022 走看看