以TXT为载体的数据交换利用SHELL生成导数脚本实例Oracle认证考试

文章作者 100test 发表时间 2010:02:15 22:16:52
来源 100Test.Com百考试题网


  平时一些数据交流,比如,各地保险行业协会与保险公司之间,很大一部分都是通过文本方式的,因为这种方式非常灵活,打个包,非常易于后期处理!而如果给你一个mdb,或者xls毕竟就没那么容易搞定了,这些数据有时候可能都是几百万条记录,你能想像xls要怎么做吗?而且,你要把这些数据导入你的数据库,那你不得不为你这个再开发一个程序,多不划算啊!

  可能你也会想如果是文本不需要开发吗?也许,习惯win平台的我们马上想起了UE,无敌列编辑模式(ALT C),但是,碰到那种字段长度并不完全相同的情况是不是只能想死呢?其实呢,借助强大的SHELL,我们根本无需开发什么,我们只是写点简单的脚本,同样可以零活到家。

  下面这个是真实案例,为数据的安全性,我对原数据稍微做了处理!

  我们先看一下从行业协会过来的数据的基本结构

  view sourceprint?$ tail tp_claim.txt

   XXXX02|,|7802410222009000261|,|80XXXX020000000000115156175N|,|6802410222009000039A|,|23XXXX0290000000000100915307E|,|84XXXX020000000000116295906E

  XXXX02|,|7802410222009000263|,|80XXXX020000000000115170337N|,|6802410222009000126|,|23XXXX0290000000000100918119E|,|

  XXXX02|,|7802410222009000266|,|80XXXX020000000000115167734N|,|6802410222009000033|,|23XXXX0290000000000100916065E|,|

   XXXX02|,|7802510222009000001|,|80XXXX020000000000114244869N|,|1800010222009000003|,|23XXXX0290000000000100920237E|,|84XXXX020000000000116340787E

   XXXX02|,|7802510222009000002|,|80XXXX020000000000114240484N|,|1800010222009000003|,|23XXXX0290000000000100920237E|,|84XXXX020000000000115646575E

   XXXX02|,|7802510222009000003|,|80XXXX020000000000114396109N|,|1800010222009000008|,|23XXXX0290000000000100915375E|,|84XXXX020000000000115771940E

   XXXX02|,|7802510222009000004|,|80XXXX020000000000114395222N|,|1800010222009000008|,|23XXXX0290000000000100915375E|,|84XXXX020000000000115771224E

   XXXX02|,|7802510222009000006|,|80XXXX020000000000114452873N|,|1800010222009000008|,|23XXXX0290000000000100915375E|,|84XXXX020000000000115816528E

   XXXX02|,|7802510222009000007|,|80XXXX020000000000114581754N|,|1800010222009000018N|,|23XXXX0290000000000100920284E|,|84XXXX020000000000115917997E

   XXXX02|,|7802510222009000016|,|80XXXX020000000000114663087N|,|1800010222009000012|,|23XXXX0290000000000100917346E|,|84XXXX020000000000115979971E

  从数据来看,总共有6个字段,并以分割符”|,|”,并且第六个字段有可能为空

  这里简单的介绍一下目标,我们会以第二列为主键,更新某张表的两个字段,分别为第三列,和第六例

  很明显 ,这种情况下用强大的AWK明显是最合适的,先看一下脚本:


相关文章


ORACLE物化视图语法Oracle认证考试
access与Oracle互导Oracle认证考试
字段以Byte(字节)或char(字符)存储的设置Oracle认证考试
Oracle11gR2的数据卫士增强特性Oracle认证考试
以TXT为载体的数据交换利用SHELL生成导数脚本实例Oracle认证考试
查看OracleCPU情况Oracle认证考试
oracle进行简单树查询(递归查询)Oracle认证考试
Oracle10g学习之闪回数据库Oracle认证考试
Oracle,sqlloader及快速生成大量数据Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛