--源地址不详

--创建目录
SQL> create directory dir_xls as '/home/oracle';

Directory created.

--给用户授权
SQL> grant all on directory dir_xls to public;

Grant succeeded.

CREATE OR REPLACE PROCEDURE p_xlstooracle IS
   v_file                utl_file.file_type;
   out_v                 VARCHAR2(4000);
   v_id                  varchar2(20);
   v_service_competition varchar2(20);
   v_cu_market_share     varchar2(20);
   v_ct_market_share     varchar2(20);
   v_cm_market_share     varchar2(20);
   v_other_market_share  varchar2(20);
BEGIN

--判断文件是否被打开
   IF utl_file.is_open(v_file) THEN
      utl_file.fclose(v_file);
   END IF;
   v_file := utl_file.fopen('DIR_XLS', 'xls_to_oracle.txt', 'r');

--循环读取文件内容,赋值 out_v
   LOOP
      BEGIN
         utl_file.get_line(v_file, out_v);
      EXCEPTION
         WHEN no_data_found THEN
            EXIT;
      END;

--依次读取空格的位置  赋值 v_id
      v_id   := substr(out_v, 1, instr(out_v, ' ', 1, 1) - 1);

--读取第二个字段的内容      
      v_service_competition := substr(out_v,
                       instr(out_v, ' ', 1, 1) + 1,
                       instr(out_v, ' ', 1, 2) - instr(out_v, ' ', 1, 1)-1);
                       
--读取第三个字段的内容                       
      v_cu_market_share := substr(out_v,
                       instr(out_v, ' ', 1, 2) + 1,
                       instr(out_v, ' ', 1, 3) - instr(out_v, ' ', 1, 2)-1);
                       
--读取第四个字段的内容                       
      v_ct_market_share := substr(out_v,
                       instr(out_v, ' ', 1, 3) + 1,
                       instr(out_v, ' ', 1, 4) - instr(out_v, ' ', 1, 3)-1);
                       
--读取第五个字段的内容                       
      v_cm_market_share := substr(out_v,
                       instr(out_v, ' ', 1, 4) + 1,
                       instr(out_v, ' ', 1, 5) - instr(out_v, ' ', 1, 4)-1);
                       
--读取地六个字段的内容                       
      v_other_market_share := substr(out_v,
                       instr(out_v, ' ', 1, 5) + 1,
                       length(out_v) - instr(out_v, ' ', 1, 5));
                       
--插入 表  i_exch_info    
insert into     i_exch_info values(v_id,v_service_competition,v_cu_market_share,v_ct_market_share,v_cm_market_share,v_other_market_share);

dbms_output.put_line(out_v);
   END LOOP;
   
--关闭文件   
   utl_file.fclose(v_file);
   
   
END p_xlstooracle;

oracle数据库读取操作系统的物理文件-转载,待完善的更多相关文章

  1. 12 oracle 数据库坏块--物理坏块-ORA-01578/ORA-01110

    oracle 数据库坏块--物理坏块 数据坏块的类型物理坏块:通常是由于硬件损坏如磁盘异常导致.内存有问题.存储链有问题. IO有问题.文件系统有问题. Oracle本身的问题等逻辑坏块:可能都是软件 ...

  2. Oracle数据库克隆后temp文件因路径变化无法找到问题

    Oracle数据库克隆后temp文件因路径变化无法找到出现如下报错Errors in filexxxx.trc:ORA-01157: cannot identify/lock data file xx ...

  3. 转载-Oracle 数据库导入导出 dmp文件

    首先询问对方数据库的表空间名称和大小,然后在你的oracle中建立相应表空间,最后使用命令导入.导出数据.补充:1.要新建一个数据库: Oracle数据导入导出imp/exp就相当于oracle数据还 ...

  4. Oracle 数据库导入导出 dmp文件

    转自: http://hi.baidu.com/ooofcu/blog/item/ec5d1f9580d41f007af48077.html 首先询问对方数据库的表空间名称和大小,然后在你的oracl ...

  5. Oracle数据库表空间 数据文件 用户 以及表创建的SQL代码

    --create the tablespace CREATE SMALLFILE TABLESPACE "TABLE_CONTAINER" --创建表空间 DATAFILE 'E: ...

  6. oracle数据库导入导出dmp文件oracle命令

    在控制台下导入imp scott/密码@orcl file=文件路径 full=Y 导出 整个数据库TEST 用户名system  密码1234 exp system/1234@TEST file=文 ...

  7. Oracle 数据库执行 操作系统的命令

    1 Linux环境下面的处理 在sqlplus 里面 添加一个 ! 就可以执行 但是 因为Oracle 必须为非root用户 所以很多命令可能无法执行: 2. Windows 环境执行命令的方式 是在 ...

  8. 导入导出oracle数据库表的dmp文件

    1.先进入命令行,点击开始,输入cmd 2.导入的命令是:imp 用户名/密码@网络服务名 file=xxx.dmp full=y; 3.导出的命令是:exp 用户名/密码@网络服务名 file=xx ...

  9. oracle查看表空间物理文件的名称,路径及大小

    select tablespace_name, file_id,file_name,round(bytes/(1024*1024),0) total_space from dba_data_files ...

随机推荐

  1. Storm on Yarn 安装配置

    1.背景知识 在不修改Storm任何源代码的情况下,让Storm运行在YARN上,最简单的实现方法是将Storm的各个服务组件(包括Nimbus和Supervisor),作为单独的任务运行在YARN上 ...

  2. (转载)mysqli使用prepared语句

    (转载)http://kaozjlin.iteye.com/blog/890855 mysqli函数库支持prepared语句的使用.它们对于在执行大量具有不同数据的相同查询时,可以提高执行速度.它们 ...

  3. 使用QJM部署HDFS HA集群

    一.所需软件 1. JDK版本 下载地址:http://www.oracle.com/technetwork/java/javase/index.html 版本: jdk-7u79-linux-x64 ...

  4. codeforce 230D Dijsktra

    #include <cstdio> #include <cstring> #include <iostream> #include <cmath> #i ...

  5. wine on ubuntu linux, and source insight 绿色版的安装

    1.安装一些必要组件 winetricks msxml3 gdiplus riched20 riched30 vcrun6 vcrun2005sp1 wenquanyi 2.拷贝字体 下载网盘中的字体 ...

  6. socket programming Max size of tcp/ip socket Buffer?

    TCP data is buffered at both sender and receiver. The size of the receiver's socket receive buffer d ...

  7. shiro能做什么,做j2ee时候要考虑什么

    转载: http://jinnianshilongnian.iteye.com/blog/2018398,         感谢原作者 <跟我学Shiro>PDF完结版下载 博客分类: 跟 ...

  8. HTML5笔记(一)

    1.HTML5提供了一些新的元素和属性,例如<nav>(网站导航块)和<footer>.这些标签较有利于搜索引擎的索引整理,同时更好的帮助小屏幕装置和视频人士使用,除此之外,还 ...

  9. HTML5 Shiv – 让该死的IE系列支持HTML5吧(转)

    摘自: http://www.cnblogs.com/yuzhongwusan/archive/2011/11/17/2252207.html HTML5能为我们做的事儿很多,最为可口的就是语义化标签 ...

  10. javascript之文档碎片,文档碎片在理论上可以提高DOM操作的执行效率

    刚来到这里,趁着还没有忘记,来记录一下,昨晚学习的一个知识点——JavaScript中的文档碎片. 一.对文档碎片的基本认识 文档碎片可以提高DOM操作性能(理论上,注意!!理论上的) 文档碎片原理 ...