Oracle odi 数据表导出到文件
最近新客户要求,以EXCEL数据方式,将数据表的内容,通过AS2协议传输到客户那边,本来打算使用存储过程直接输出EXCEL,但一想,ODI这么强大的工具应该可以直接进行转换,所以参考了一下官方标准文档,测试成功,好了,不啰嗦了,进行步骤说明:
建立模型
ODI进行导出,首先要有来源和目的模型,简单说就是FROM---TO
这里我们从视图导出到文件,那么需要建立视图的模型与文件模型。
首先建立文件模型。
建立模型文件夹,名称随便起,这里我叫FILES:

建立模型文件夹后,右键点击模型文件夹FILES,弹出菜单,选择新模型,新建模型

新建模型如下图:定义TAB页中,填入名称,由于是文件模型,所以技术要选File 逻辑方案要选 flat_files_src,其他TAB也可默认不填。

建立完模型后,右键点击,弹出如下菜单,选择新建数据存储:

新建数据存储,如下图:在定义TAB页中,输入名称,资源名称这里选择自己定义的CSV文件。

在文件TABL页中,选择文件格式,输入字段分隔符

在列TAB页中,选择逆向工程,系统自动把CSV文件中的列,读取出来,如下图

CSV格式如下图:这里注意,所有的字段是一列中,用逗号分隔。

到此为止,文件数据存储建立完毕。
下面建立视图的数据存储:
视图存储于文件存储类似:
建立模型:

逆向工程:我这里是视图,如果是表或是别的,可以按需要进行选择,掩码类似于筛选,我视图是以XXCUS_A01开头,所以我只筛选出这个开头的视图。

选择逆向工程:点击后,会出现视图名称,选择新建数据存储

其他TAB可以默认,至此视图数据模型建立完毕。
建立项目
模型都建立完毕,现在我们建立项目,在定义TAB页中输入名称和代码

新建接口:展开新建的项目,找到接口,右键点击,新建接口,在定义TAB页中,输入名称,注意"临时区域与目标区不同"这个现在是灰色的,现在不能选,必须保存完毕后,才可勾选。

点击接口界面,下方的映射:在映射中,可以看到左边和右边两个框,帮刚才建立的视图数据存储拖到左边,把文件数据存储拖到右边,然后把左边的列,拖到右边的列,进行对应映射设置。

设置流选项:在流TAB中,选择目标区域,在属性检查器中 IKM及选项,参照下图进行设置。

设置完毕保存接口。
执行测试
选中接口,点击执行按钮,进行测试

在操作中查看执行结果:如下图,看以看到执行成功,插入书799条

到此测试完毕。
Oracle odi 数据表导出到文件的更多相关文章
- 关于 Oracle 的数据导入导出及 Sql Loader (sqlldr) 的用法
在 Oracle 数据库中,我们通常在不同数据库的表间记录进行复制或迁移时会用以下几种方法: 1. A 表的记录导出为一条条分号隔开的 insert 语句,然后执行插入到 B 表中2. 建立数据库间的 ...
- mysqldump 导出统一限制每张数据表导出的记录数
mysqldump 导出统一限制每张数据表导出的记录数 在工作过程中,需要将生产的数据导出到本地开发环境,我希望可以导出部分数据.而服务器数据量比较大(上千万),如果选择直接从服务器导出数据, 正在运 ...
- oracle数据库数据导入导出步骤(入门)
oracle数据库数据导入导出步骤(入门) 说明: 1.数据库数据导入导出方法有多种,可以通过exp/imp命令导入导出,也可以用第三方工具导出,如:PLSQL 2.如果熟悉命令,建议用exp/imp ...
- Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件
本文通过Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件,代码如下: import java.io.File; import java.io.IOException; import ...
- oracle:查询数据表是否存在
oracle:查询数据表是否存在 select count(*) as NUM from all_tables where table_name = '{$table}' 或者: select cou ...
- linux mysql 数据库操作导入导出 数据表导出导入
linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...
- Shell脚本实现DB2数据库表导出到文件
该Shell脚本用于实现将DB2数据库表导出到文件,将在另一篇博文<Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件>中通过Java代码实现调用该脚本并传入参数. #! ...
- Oracle导入数据无法导出空表的问题
Oracle 11G在用export导出时,空表不能导出,11G R2中有个新特性,当表无数据时,不分配segment,以节省空间. 那么我们应该如何导出空表: 利用如下语句生成alter语句,未每个 ...
- pl/sql 如何将Excel文件数据导入oracle的数据表?
1.准备导入数据的excel文件 注意:excel列名和数据表列名必须相同,excel文件sheet2和sheet3可以删除 1)excel文件格式 2)数据表格式 2.打开pl/sql ,找到工具- ...
随机推荐
- 《剑指Offer》面试题-二维数组中的查找
题目1384:二维数组中的查找 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:7318 解决:1418 题目描述: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到 ...
- Oracle常用操作
比较时间 select * from up_date where update < to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss' ...
- [转]UIWebView的Javascript运行时对象
An alternative, that may get you rejected from the app store, is to use WebScriptObject. These APIs ...
- OAuth的一个.NET开源实现
从编译DotNetOpenAuth中学到的程序集强签名知识 OAuth的一个.NET开源实现,官方网站:http://dotnetopenauth.net/ . 从GitHub签出DotNetOpen ...
- 【Yom框架】漫谈个人框架的设计之一:是IRepository还是IRepository<T>?
前言 ...
- MyEclipse修改默认的workspace路径
在此只提供一个自己认为可行的办法(已验证可行) 已MyEclipse8.5为例 打开安装路径C:\Program Files\Genuitec\MyEclipse 8.5\configuration下 ...
- java开发是否一定要使用三层结构
从开始学习java的时候,爷爷的爷爷就教导我们,要使用三层结构去开发结构明细,低耦合,高可用的项目.但是具体开发中,每新建一张表,就要新建BO,dao层,服务层,而新建这5,6个类也许仅仅只为了实现一 ...
- SQL Server监控清单
SQL Server监控清单 一. 服务器1. 状态监控(1) 服务器是否可访问?(2) 相应的数据库服务是否启用?(3) 操作系统事件日志中的错误或告警(4) 磁盘可用空间 服务器状态监控,不管使用 ...
- ZOJ 1204 一个集合能组成多少个等式
Additive equations Time Limit : 20000/10000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other ...
- 揭开Html 标签的面纱,忘不了的html .
Html :(Hypertext MarkupLanguage),是用于描述网页文档的一种标记语言,是一种标准,它通过标记符号来标记要显示的网页中的各个部分.其本身是一种文本文件,通过在文本文件中添 ...