SQLSERVER和ORACLE批量处理表名和字段名大写

sqlServer字段大写转小写.txt 该Sql语句可将sqlServer表结构字段列名内大写字母转换为小写字母,只需拷贝sql到数据库查询框中执行即可。 立即下载

在sql移植到oracle过程中,都会遇到表名和字段名大写的问题,因为在oracle中默认表名和字段名都是大写的,虽然可以通过使用双引号的方式进行操作,如select * from "testtable"但是很多情况下,这样做的代价很大,因为很多程序的代码是早已经写好的,而要修改oracle系统配置又不安全,一个比较稳妥的办法是批量修改表名和文件名。

 

先说在SQL中修改表名和字段名的办法:虽然在sql中默认是不区分表名和字段名的大小写的,但是通过sql的DTS进行数据导出导入的时候,如果表名和字段名是小写,那生成的代码中对应也是小写,反之亦然。因此通过此办法生成oracle数据表的时候就需要首先批量把sql中的表名和字段名都修改为大写,下面给出的是对应的代码。

批量修改表名:

复制代码

declare @sql varchar(300)--,@rowcount varchar(10),@dyncnum int
    declare @tablename varchar(100)
    declare cursor1 cursor for         
    select name  from sysobjects  where xtype = 'u'  order by name               
    open cursor1                       
    fetch next from cursor1 into @tablename
    while @@fetch_status=0           
    begin
        set @sql='sp_rename '''+@tablename+''','''+upper(@tablename)+''''
        print @sql 
        --exec(@sql)             
        fetch next from cursor1 into @tablename
    end
    close cursor1                   
    deallocate cursor1

复制代码

批量修改字段名代码:

复制代码

declare @sql varchar(300)
    declare @tablecolumnname varchar(100), @columnname varchar(100)
    declare cursor1 cursor for         
    select b.name+'.['+a.name+']',a.name from syscolumns a  ,sysobjects b where a.id = object_id(b.name) and b.xtype = 'u' and a.xtype <>189 and a.xtype <>34 and a.xtype <>35 and a.xtype <>36                
    open cursor1                       
    fetch next from cursor1 into @tablecolumnname,@columnname
    while @@fetch_status=0           
    begin
        set @sql='sp_rename '''+@tablecolumnname+''','''+upper(@columnname)+''',''column'''
        --print @sql 
        exec(@sql)             
        fetch next from cursor1 into @tablecolumnname,@columnname
    end
    close cursor1                   
    deallocate cursor1

复制代码

还有一种情况就是,表已经导入到oracle中了,但是发现表名和字段名都是小写,需要在oracle中修改表名和字段名。

这个时候,我们需要使用一种办法来帮我们自动生成修改的语句,然后copy出来执行就可以了。 

修改表名:

1 select 'alter table "'||table_name||'" rename to '||upper(table_name)||';' from user_tables where table_name<>upper(table_name);

修改字段名:

1 select 'alter table '||table_name||' rename column "'|| column_name ||'" to '||upper(column_name)||';'
2 from user_tab_columns where column_name<>upper(column_name);

这个时候,我们可以在sql plus或者toad等客户端工具中生成对应的alter语句,然后copy出来执行就ok了。

 

引申一下,如果需要把oracle中的数据全部清空或者把表全部删除,也可以采用如上的方式

--清除数据
select 'TURNCATE table '||table_name ||';' from user_tables; 
--删除表
select 'drop table '||table_name ||';' from user_tables; 

原文链接:http://www.cnblogs.com/tippoint/archive/2012/11/07/2758855.html

原文链接:https://www.cnblogs.com/wangping01/p/4834190.html

怎么重命名sqlserver表中字段名 详细描述了怎么重命名sqlserver表中字段名 立即下载

相关推荐

3.6KW储能双向逆变器(原理图PCB源码)

通过百度网盘分享的文件:优快云 3.6KW储能双向逆变器 链接:https://pan.baidu.com/s/18NN6KnpywFUIDtAQ4b1LTg?pwd=csdn 提取码:csdn

2401_86562087的博客 2185

mysql批量修改字段名(列名)

1.需求 项目需要兼容mysql,oracle,postgresql三种数据库,但是在最开始使用的Mysql主键字段是使用的uid,uid在oracle数据库当中是不识别的在数据库迁移的过程中会报错。 2.检索所有需要修改的字段。 SELECT table_name FROM information_schema.`COLUMNS` WHERE lower( TABLE_SCHEMA )= 'jtsdb' AND lower( COLUMN_NAME )= 'uid'; 3.写SQL脚本替换

qq_40297844的博客 5822

RTX 4060笔记本也能跑!保姆级教程:用Ollama在Windows上部署DeepSeek-R1-8B模型

本文详细介绍了如何在RTX 4060笔记本上通过Ollama本地部署DeepSeek-R1-8B模型,提供从环境配置到性能调优的全流程优化指南。针对笔记本用户的显存、散热等问题,给出了量化模型选择、启动参数优化及散热解决方案,帮助用户在消费级硬件上高效运行大语言模型。

weixin_28745067的博客 525

postgresql表名转小写,字段转小写

postgresql数据库表名转小写,字段转小写

menghuannvxia的专栏 1761

基于Simulink的直流电机双闭环调速系统抗扰动仿真与参数优化

本文详细介绍了基于Simulink的直流电机双闭环调速系统仿真与参数优化方法。通过构建转速外环与电流内环的仿真模型,阐述了利用工程设计法整定PI参数的核心步骤,并重点探讨了如何优化系统参数以增强其抗负载突变等扰动的能力,实现快速、平稳的调速性能。

weixin_29061997的博客 193

Cadence Allegro 17.4学习记录开始00

Cadence Allegro 有三个版本,16.6,17.2,17.4。现在主要学习最新的版本17.4.原理图设计:OrCADPCB设计:Allegro主要用到的就下面三个图片软件:PCB Editor 17.4 是用来画PCB和元器件封装的;Padstack Editor 17.4 是用来画元器件焊盘的;Capture CIS 17.4 是用来画原理图和原理图库的。其实Cadence还有很多功能,现在计划先学习以上内容,后面熟悉了这个软件,还可以继续学习放仿真等功能。

qq_31444421的博客 7448

使用Navicat将Oracle数据库迁移至PGSQL数据库问题记录

1.在navicat 工具选项卡中选择数据传输。oracle->pgsql; 2.传输完成后表名和字段都是为 带"的大写字段,需要转为小写不带": 1):转换表名:select concat(‘ALTER TABLE "’,tablename,’" RENAME TO ',tablename) from pg_tables where schemaname=‘public’; 2)转换字段: SELECT concat(‘ALTER TABLE ‘,table_name, ’ RENAME "’, c

mq995500的博客 1863

Win10更新后黑屏只剩鼠标?火绒误杀explorer.exe的5种自救方案(附详细步骤)

本文详细介绍了Win10更新后出现黑屏只剩鼠标的5种专业修复方案,重点解决火绒误杀explorer.exe的问题。从基础的任务管理器操作到安全模式下的系统修复,再到注册表编辑和系统还原,提供了全面的解决方案,帮助用户快速恢复系统正常运行。

weixin_29306571的博客 637

Mysql 数据库表名小写一键全部转大写

记得先备份数据,在维护窗口谨慎执行,并检查转换结果。修改应用程序的表名引用也不要漏掉。这个脚本可以将指定数据库中的所有表名一次性批量转换为大写。

编码行者的博客 2304

【PINN物理信息网络】基于PINN物理信息网络求解圆柱坐标中的热方程(python)

【PINN物理信息网络】基于PINN物理信息网络求解圆柱坐标中的热方程(python)

k8291121的博客 2274

【Unity Shader】Special Effects(十二)Glow 外发光(UI)

Properties_GlowColor ("外发光颜色", Color) = (0, 0, 0, 1)_GlowIntensity("外发光强度", Range(0, 1)) = 1参数详解:_GlowColor:外发光颜色,指定外发光的显示颜色。_GlowIntensity:外发光强度,指定外发光的显示强度,0为不可见,1为最强强度。

神码编程 934

查询数据库的数据库名和表名(MySQL、MSSQL、ORACLE)

MySQL中查询所有数据库名和表名 1.查询所有数据库 show databases; 2.查询指定数据库中所有表名 select table_name from information_schema.tables where table_schema='database_name' and table_type='base table'; 3.查询指定表中的所有字段名 select col...

dqcoffee的博客 2万+

【网络与爬虫 49】突破WAF防线:Web应用防火墙绕过实战攻略

本文深入探讨Web应用防火墙(WAF)的工作原理与绕过技术,从基础的编码变换到高级的协议层攻击,通过实战案例和代码演示,帮助安全研究者和渗透测试人员理解现代WAF防护机制并掌握合规的绕过方法。内容涵盖SQL注入、XSS、文件上传等攻击向量的WAF绕过技术,适合网络安全从业者和爬虫开发者学习参考。

熵数实验室 1848

oracle语句字母不是大写,让Oracle 大小写敏感 表名 字段名 对像名

一、解决方案1、在表名、字段名、对象名上加上双引号,即可实现让oracle大小写区分。2、但是这又引起了另一个问题:在数据库操作中,sql语句中相应的表名、字段名、对象名上一定要加双引号。解决办法是:使用"\"转义。如:Stringsql = "select * from userinfo where \"loginId\"=? andloginpwd=?";二、详解一般情况下,使用者在进行Ora...

weixin_32424885的博客 643

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Oracle对表名大小写敏感吗,让Oracle 大小写敏感 表名 字段名 对像名

一、解决方案1、在表名、字段名、对象名上加上双引号,即可实现让oracle大小写区分。2、但是这又引起了另一个问题:在数据库操作中,sql语句中相应的表名、字段名、对象名上一定要加双引号。解决办法是:使用""转义。如:String sql = “select * from userinfo where “loginId”=? and loginpwd=?”;二、详解一 般情况下,使用者在进行Ora...

weixin_39827034的博客 860

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

ORACLE表字段名称改为大写的方法

begin   DBMS_OUTPUT.ENABLE (buffer_size=>null) ;   for t in (select table_name tn from user_tables) loop       begin          for c in (select column_name cn from user_tab_columns where table_name

giswangbaogang126的专栏 2892

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

mysql user_tab_cols,MySQL,SQLSERVER,ORACLE获取数据库表名及字段名

MySQL,SQLSERVER,ORACLE获取数据库表名及字段名1、MySQL获取表名:用“show tables”命令。在程序中也可以采用该命令获取,在返回的RowSet中的“Tables_in_db”读出来。其中“db”是指你的数据库的名称,比如说Tables_in_productdb。获取某个表的字段:用“desc tablename”命令。取得方式和上面类似。此外,还可用MySQL数据库...

weixin_33819646的博客 964

使用SQL查询所有数据库名和表名及字段名(Mysql、SQLServer、Oracle)

MySQL中查询所有数据库名和表名 1.查询所有数据库 show databases; 2.查询指定数据库中所有表名 select table_name from information_schema.tables where table_schema='database_name' and table_type='base table'; 3.查询指定表中的所有字段名 se...

码里行间 2104

oracle表有包含的字段名,查询数据库里所有表名和字段名的语句

查询数据库里所有表名和字段名的语句SQL 查询所有表名:SELECT NAME FROM SYSOBJECTS WHERE TYPE='U'SELECT * FROM INFORMATION_SCHEMA.TABLES查询表的所有字段名:SELECT NAME FROM SYSCOLUMNS WHERE ID=OBJECT_ID(' 表名' )SELECT * FROM INFORMATION_S...

weixin_39775029的博客 944
上一篇: 80端口被占用了怎么办
AndroidLiuBin
博客等级 码龄15年 2粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值