例如,有这么一张表

当Oracle表字段为小写时

当你想查询NAME和age字段的时候,你会发现

当Oracle表字段为小写时

表字段不存在,没有明确定义。

当Oracle表字段为小写时

那就只能这么查询了。这应该和Oracle自己的机制有关吧。当你查询没有添加英文双引号的时候。默认给你转化成大写。

下面分享一个把表字段从小写改成大写的sql

BEGIN
    FOR c IN ( SELECT COLUMN_NAME cn FROM all_tab_columns WHERE table_name = '表名' )
    loop
BEGIN
    execute IMMEDIATE 'alter table 表名 rename column "' || c.cn || '" to ' || c.cn;
EXCEPTION
    WHEN others THEN
    dbms_output.put_line ( '表名' || '.' || c.cn || '已经存在' );

END;

END loop;
END;

 

我也是网上找的。测试了有效。记录一下

相关文章:

  • 2022-03-08
  • 2022-12-23
  • 2021-07-25
  • 2022-01-18
  • 2021-06-30
  • 2022-12-23
  • 2022-01-24
  • 2022-01-24
猜你喜欢
  • 2022-12-23
  • 2022-01-08
  • 2022-12-23
  • 2022-03-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案