Oracle如何批量将表中字段名全转换为大写(利用简单存储过程)
作者:w.ang.jie 时间:2024-01-22 11:23:41
前言
今天查询一个数据字段一直提示字符无效,明明在数据库表字段中是存在的;
查询后得知,数据库表字段为小写时,查询需要将字段名小写并加上双引号;
表名同理,我这里表名是大写,暂时不需要改。
搜到一个批量修改字段名为大写的存储过程,如下:
登陆到要修改的用户下,
执行:
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;
来源:https://blog.csdn.net/qq_32392597/article/details/109599007
标签:oracle,字段名,大写
0
投稿
猜你喜欢
详解Python3的TFTP文件传输
2023-06-01 22:29:17
对python-3-print重定向输出的几种方法总结
2023-10-21 19:38:58
分享18个最佳代码编辑器/IDE开发工具
2022-03-26 01:31:24
修改SQL Server 2005 sa用户密码的方法
2008-12-10 14:41:00
python中Switch/Case实现的示例代码
2021-09-18 22:03:39
基于python实现百度翻译功能
2023-09-06 15:14:18
python机器学习基础决策树与随机森林概率论
2023-06-04 16:55:08
使用Pandas将inf, nan转化成特定的值
2023-04-15 23:36:33
经典SQL语句大全
2009-08-26 16:44:00
Entity Framework Core生成数据库表
2024-01-15 18:09:29
Python的代理类实现,控制访问和修改属性的权限你都了解吗
2022-10-25 13:09:47
python读取文件名称生成list的方法
2021-12-21 02:40:34
python爬虫把url链接编码成gbk2312格式过程解析
2023-04-26 21:00:10
Django CSRF跨站请求伪造防护过程解析
2021-04-15 03:00:50
提高CSS代码的可读性
2008-05-11 18:59:00
JS将数字转换成三位逗号分隔的样式(示例代码)
2024-05-02 16:26:59
Mysql 5.7 新特性之 json 类型的增删改查操作和用法
2024-01-24 23:45:53
如何在Python中用好短路机制
2022-04-23 16:56:42
pycharm修改文件的默认打开方式的步骤
2023-04-18 10:38:23
python实现图片素描效果
2022-06-10 21:00:40