新公司需要写pl\sql,日常编码过程中,一些简单而重复的操作耗费了不少时间,由于公司不能向外提交数据,电脑又禁用usb,所以只能通过博客这个中转站获取在家里准备写好的脚本。下面的代码我就不详细解释了,有同样需求的朋友自己研究下,不明白或者有需要改进的地方欢迎发邮件。
字段匹配
$ cat tt1
Name Null? Type
----------------------------------------- -------- ----------------------------
DEPTNO NOT NULL NUMBER(2)
DNAME VARCHAR2(14)
LOC VARCHAR2(13)
$ cat tt2
DNAME ssss
$ cat to_verify
#!/bin/bash
export PATH=/u01/app/oracle/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/oracle/bin
cat /dev/null > result
sed -e '1,3d' -e 's/NOT NULL//g' $1 > tmp1
awk '{if(!s[NR])s[NR]=$1;if(FNR>x)x=NR;a[$1]=$2}END{for(i=1;i<=x;i++)print s[i],a[s[i]]}' tmp1 $2 > result
rm tmp1
$ ./to_verify tt1 tt2
$ cat result
DEPTNO NUMBER(2)
DNAME ssss
LOC VARCHAR2(13)
利用CAST进行类型转换
$ cat to_cast
#!/bin/bash
export PATH=/u01/app/oracle/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/oracle/bin
cat /dev/null > result
sed -e 's/NOT NULL//g' -e "s/^ \([A-Z_]*[A-Z]\).*(\([0-9]*\))/CAST(NVL(\1,' ') AS CHAR(\2))/g" -e "s/ \([A-Z_]*[A-Z]\).*DATE/TO_DATE(\1,'YYYY-MM-DD')/g" $1 > result
echo "#################################EXAMPLE###############################" >> result
echo "cast(nvl(max(sal),'1') as char(23))" >> result
echo "cast(nvl(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),' ') as char(23))" >> result
echo "########################################################################" >> result
$ ./to_cast tt1
$ cat result
CAST(NVL(DEPTNO,' ') AS CHAR(2))
CAST(NVL(DNAME,' ') AS CHAR(14))
CAST(NVL(LOC,' ') AS CHAR(13))
#################################EXAMPLE###############################
cast(nvl(max(sal),'1') as char(23))
cast(nvl(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),' ') as char(23))
#######################################################################
..................................持续更新中....................................
本文原创,转载请注明出处、作者
如有错误,欢迎指正
邮箱:czmcj@163.com
相关推荐
《jQuery小脚本集合:构建动态网页的利器》 在Web开发领域,jQuery以其简洁、高效的特点,成为了JavaScript库中的佼佼者。本资源“jquery小脚本集合”汇聚了31个实用的小脚本,涵盖了弹层、图片轮播、伸缩效果以及...
综上所述,这个"java网页小脚本"压缩包提供了一个学习和实践Web开发,尤其是JavaScript和Java交互的好机会。无论是初学者还是经验丰富的开发者,都可以从中找到有价值的素材。如果你对Web开发有兴趣,不妨深入探索这...
"小脚本4.71免费版"是一款专为编程爱好者和初学者设计的轻量级辅助工具,它旨在简化脚本编写过程,提高开发效率。作为一款软件/插件,小脚本4.71提供了多种实用功能,帮助用户在编程时减少错误,提升代码质量。 ...
《小脚本4.0——自动化脚本与可视化编程的利器》 小脚本4.0是一款专为页游和端游设计的自动化脚本编辑工具,它以其强大的功能和友好的用户界面,深受广大玩家和开发者喜爱。该工具不仅提供了丰富的内置脚本示例,还...
这是一个非常好用的MAX渲染关机小脚本。当你在渲染出图的时候,时间比较长,你就可以设置渲染完后文件保存路径,然后用这个小脚本。还有晚上要渲染图的时候,也可以进行设置。非常方便好用!!
高通平台进9008模式小脚本,不需要强制上拉BOOT管脚,
生成MAC地址小脚本
一个测速小脚本,
python2.7关机小脚本,可以定时关机。代码短小精悍。
maya脚本 maya常用小脚本.zip
可以忽悠人的小脚本,点击就关机,自己平时也可以用它来方便关机
【标题】"百度搜图小脚本spider"是一个基于Python编写的简易搜索引擎,主要用于从百度图片搜索中抓取特定类型的图像。这个脚本通过模拟用户行为,对百度图片搜索接口进行请求,获取并下载所需的图片。在日常生活中,...
在线ip自动加入限速小脚本
vb小脚本找电影.bat
部署在winserver的c盘/program file/mail下,自动通过outlook给自己发送邮件,可在outlook设置收到邮件后保存一个savelog.txt的标记,脚本根据是否有savelog以及发邮件是否成功,判断服务器是否宕机。
这个"Linux性能监测小脚本"正为此目的而设计,它提供了简单易用的工具来监控关键系统指标。下面我们将深入探讨这个小脚本可能包含的功能以及其在Linux监控中的应用。 首先,`mynmonForAIX`可能是一个针对IBM AIX...
用于下载美拍用户视频的小脚本,只需要输入用户ID即可,学python没多久,大佬路过勿喷。
《Winhex数据恢复小脚本解析与应用》 在IT领域,数据恢复是一项至关重要的技能,尤其是在面临数据丢失或损坏时。Winhex是一款强大的十六位 hexadecimal 编辑器,广泛用于磁盘取证、数据恢复、文件修复等多个场景。...
一个备份的小脚本,linux系统向windows系统备份数据