`
ljjclub
  • 浏览: 34565 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

通过外部表利用存储过程加载数据

阅读更多
每天需要定时百万条数据入库
建立外部表的步骤:

     1、创建以“,”分隔的文件“all.csv”至“D:\Test”

     2、创建一个Directory:

     create directory TestTable_dir as 'D:\Test' ;
3 授权

grant read,write on directory to user;
4,建表

CREATE TABLE test_all (
  t_name    varchar2(50),
  t_id  VARCHAR2(50),
  lo_du number(10),
  lo_fen number(10),
  lo_miao number(10,1),
  la_du number(10),
  la_fen number(10),
  la_miao number(10,1),
  v_level varchar2(50))
ORGANIZATION EXTERNAL (
TYPE oracle_loader
DEFAULT DIRECTORY datatest
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
BADFILE 'all_bad_file.bad'
LOGFILE 'all_log_file.log'
FIELDS TERMINATED BY ','
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS
(t_name,t_id,lo_du,lo_fen,lo_miao,la_du,la_fen,la_miao,v_level))
LOCATION ('all.csv')
)
PARALLEL
REJECT LIMIT 0
NOMONITORING

5, 查询  select * from test_all

6.创建存储过程

建外部表
create or replace procedure proc_create_ext_tbls authid current_user is
begin
dbms_utility.exec_ddl_statement( '
CREATE TABLE test_all (
  t_name    varchar2(50),
  t_id  VARCHAR2(50),
  lo_du number(10),
  lo_fen number(10),
  lo_miao number(10),
  la_du number(10),
  la_fen number(10),
  la_miao number(10),
  v_level varchar2(50))
ORGANIZATION EXTERNAL (
TYPE oracle_loader
DEFAULT DIRECTORY datatest
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
BADFILE' ||''''||'all_bad_file.bad'||''''||
'LOGFILE' ||''''||'all_log_file.log'||''''||
'FIELDS TERMINATED BY'|| ''''||','||''''||
'MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS
(t_name,t_id,lo_du,lo_fen,lo_miao,la_du,la_fen,la_miao,v_level))
LOCATION ('||''''||'all.csv'||''''||')
)
PARALLEL
REJECT LIMIT 0
NOMONITORING
   ');
end proc_create_ext_tbls;

存入数据库

create or replace procedure test_ddl
is
begin
insert into tower_dll
(tower_id,tower_name,latitude,longtitude,v_level)
SELECT
SEQUENCE.nextval,t_name||t_id,la_du+la_fen/60+la_miao/3600,lo_du+lo_fen/60+lo_miao/3600,v_level from test_all;
commit;
end test_ddl;


6  建job 定时执行

begin
  sys.dbms_job.submit(job => :job,
                      what => 'proc_create_ext_tbls;',
                      next_date => to_date('28-06-2012 17:52:58', 'dd-mm-yyyy hh24:mi:ss'),
                      interval => 'sysdate+1/24/60*5');
  commit;
end;

执行job时可能会出现视图错误。需要赋予相应权限
grant  CREATE ANY TABLE,CREATE any sequence  to user;
分享到:
评论

相关推荐

    存储过程的安全及性能优化

     扩展存储过程是SQL Server中的另一类存储过程,它是以其它语言编写的外部程序,是以动态链接库(DLL)形式存储在服务器上,最终SQLServer就可以动态加载并执行它们  编写好后使用SQLServer的固定角色sysadmin...

    Excel 2007数据透视表完全剖析 1/7

    读完本书,您将成为数据透视表的真正权威,能够利用VBA使数据透视表自动化,用OLAP多维数据集创建外部数据的数据透视表,甚至创建动态报表系统。让企业经理单击几下鼠标就可以自己找到问题的答案。  ·利用大量...

    Excel 2007数据透视表完全剖析 3/7

    读完本书,您将成为数据透视表的真正权威,能够利用VBA使数据透视表自动化,用OLAP多维数据集创建外部数据的数据透视表,甚至创建动态报表系统。让企业经理单击几下鼠标就可以自己找到问题的答案。  ·利用大量...

    Excel 2007数据透视表完全剖析 4/7

    读完本书,您将成为数据透视表的真正权威,能够利用VBA使数据透视表自动化,用OLAP多维数据集创建外部数据的数据透视表,甚至创建动态报表系统。让企业经理单击几下鼠标就可以自己找到问题的答案。  ·利用大量...

    Excel 2007数据透视表完全剖析 5/7

    读完本书,您将成为数据透视表的真正权威,能够利用VBA使数据透视表自动化,用OLAP多维数据集创建外部数据的数据透视表,甚至创建动态报表系统。让企业经理单击几下鼠标就可以自己找到问题的答案。  ·利用大量...

    元数据驱动的大数据服务平台.docx

    数据中心将来源于设备状态监测、企业管理信息系统等不同来源、不同特性的数据通过统一的ETL 过程存储下来,并在此过程中实现元数据的采集和稽核,建立电子化的数据目录并存储在元数据库中,同时在服务平台上建立...

    Hive用户指南(Hive_user_guide)_中文版.pdf

    表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。 3、 解释器、编译器、优化器完成 HQL 查询语句从词法分析、语法分析、编译、优化以及 查询计划的生成。生成的查询计划存储在 HDFS 中,...

    C#.net_经典编程例子400个

    55 实例052 为TextBox控件添加列表选择框 57 2.2 Button控件应用 58 实例053 在Button按钮中显示图标 58 2.3 ComboBox控件应用 59 实例054 将数据表中的字段添加到ComboBox控件 59 实例...

    数据库审计系统需求说明.docx

    支持主流业务协议: TeInet、SMTP POP3 DCOM 4 审计内容 审计日志包括账号、 SQL语句、表、字段、存储过程、客户端工具、 IP、MAC实 例名、主机名等条件。 支持双向审计,特别是返回字段和结果、执行状态、返回行数...

    云数据库方案设计(1).doc

    与大数据存储平台的数据集成 数据库提供外部表技术,可以将交易型和分析型数据库与其他存储平台对接,在数 据库内部,通过外部表访问大数据存储平台中的数据,包括: a)与HDFS对接:外部表访问引擎(读写模块),...

    云数据库方案设计.doc

    与大数据存储平台的数据集成 数据库提供外部表技术,可以将交易型和分析型数据库与其他存储平台对接,在数 据库内部,通过外部表访问大数据存储平台中的数据,包括: a)与HDFS对接:外部表访问引擎(读写模块),...

    C#程序开发范例宝典(第2版).part13

    实例063 将数据库数据添加到ListBox控件中 78 实例064 借助绑定控件实现数据选择录入 79 实例065 设置ListBox控件选择项 80 2.5 选择类控件应用 83 实例066 利用选择控件实现权限设置 83 实例067 利用选择控件...

    C#程序开发范例宝典(第2版).part08

    实例063 将数据库数据添加到ListBox控件中 78 实例064 借助绑定控件实现数据选择录入 79 实例065 设置ListBox控件选择项 80 2.5 选择类控件应用 83 实例066 利用选择控件实现权限设置 83 实例067 利用选择控件...

    C#程序开发范例宝典(第2版).part02

    实例063 将数据库数据添加到ListBox控件中 78 实例064 借助绑定控件实现数据选择录入 79 实例065 设置ListBox控件选择项 80 2.5 选择类控件应用 83 实例066 利用选择控件实现权限设置 83 实例067 利用选择控件...

    C#程序开发范例宝典(第2版).part12

    实例063 将数据库数据添加到ListBox控件中 78 实例064 借助绑定控件实现数据选择录入 79 实例065 设置ListBox控件选择项 80 2.5 选择类控件应用 83 实例066 利用选择控件实现权限设置 83 实例067 利用选择控件...

Global site tag (gtag.js) - Google Analytics