最近新客户要求,以EXCEL数据方式,将数据表的内容,通过AS2协议传输到客户那边,本来打算使用存储过程直接输出EXCEL,但一想,ODI这么强大的工具应该可以直接进行转换,所以参考了一下官方标准文档,测试成功,好了,不啰嗦了,进行步骤说明:

  1. 建立模型

ODI进行导出,首先要有来源和目的模型,简单说就是FROM---TO

这里我们从视图导出到文件,那么需要建立视图的模型与文件模型。

首先建立文件模型。

建立模型文件夹,名称随便起,这里我叫FILES:

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

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

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

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

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

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

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

到此为止,文件数据存储建立完毕。

下面建立视图的数据存储:

视图存储于文件存储类似:

建立模型:

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

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

其他TAB可以默认,至此视图数据模型建立完毕。

  1. 建立项目

模型都建立完毕,现在我们建立项目,在定义TAB页中输入名称和代码

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

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

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

设置完毕保存接口。

  1. 执行测试

选中接口,点击执行按钮,进行测试

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

到此测试完毕。

Oracle odi 数据表导出到文件的更多相关文章

  1. 关于 Oracle 的数据导入导出及 Sql Loader (sqlldr) 的用法

    在 Oracle 数据库中,我们通常在不同数据库的表间记录进行复制或迁移时会用以下几种方法: 1. A 表的记录导出为一条条分号隔开的 insert 语句,然后执行插入到 B 表中2. 建立数据库间的 ...

  2. mysqldump 导出统一限制每张数据表导出的记录数

    mysqldump 导出统一限制每张数据表导出的记录数 在工作过程中,需要将生产的数据导出到本地开发环境,我希望可以导出部分数据.而服务器数据量比较大(上千万),如果选择直接从服务器导出数据, 正在运 ...

  3. oracle数据库数据导入导出步骤(入门)

    oracle数据库数据导入导出步骤(入门) 说明: 1.数据库数据导入导出方法有多种,可以通过exp/imp命令导入导出,也可以用第三方工具导出,如:PLSQL 2.如果熟悉命令,建议用exp/imp ...

  4. Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件

    本文通过Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件,代码如下: import java.io.File; import java.io.IOException; import ...

  5. oracle:查询数据表是否存在

    oracle:查询数据表是否存在 select count(*) as NUM from all_tables where table_name = '{$table}' 或者: select cou ...

  6. linux mysql 数据库操作导入导出 数据表导出导入

    linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...

  7. Shell脚本实现DB2数据库表导出到文件

    该Shell脚本用于实现将DB2数据库表导出到文件,将在另一篇博文<Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件>中通过Java代码实现调用该脚本并传入参数. #! ...

  8. Oracle导入数据无法导出空表的问题

    Oracle 11G在用export导出时,空表不能导出,11G R2中有个新特性,当表无数据时,不分配segment,以节省空间. 那么我们应该如何导出空表: 利用如下语句生成alter语句,未每个 ...

  9. pl/sql 如何将Excel文件数据导入oracle的数据表?

    1.准备导入数据的excel文件 注意:excel列名和数据表列名必须相同,excel文件sheet2和sheet3可以删除 1)excel文件格式 2)数据表格式 2.打开pl/sql ,找到工具- ...

随机推荐

  1. iOS基础 - XML & JSON

    一.HTML & XML HTML 是用来描述网页的一种语言 HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记 ...

  2. vector如何进行局部排序

    对于vector的全体排序,我们知道sort(vv.begin(),vv.end())来进行的. 但是对于如果是局部排序的话,比如,vector有100个元素,但我只想对10-80之间的数进行排序,如 ...

  3. Objective-C Blocks测试题与解析

    Objective-C Blocks测试 你真的理解blocks在objective-c中是如何工作的了吗,做个测试检验一下吧. 所有的测试结果已被以下版本的LLVM验证: Apple clang v ...

  4. easyui小清新俺也晒晒 视频管理软件bs项目

    easyui小清新俺也晒晒 视频管理软件bs项目 针对设备的管理软件 这是我听到最多的话.视频管理软件bs项目.easyui 好与坏我不去评价 项目做了好几个月,其实代码看来也没用多少,但是做需求,时 ...

  5. appfog java jdbc mysql连接

    本来用得好好的openshift被墙了,无奈只能找过一个免费的空间.同学推荐appfog,appfog的确是一个很好用的空间,支持几乎所有主流的技术.我自己喜欢写点java,刚好我就开始使用了.app ...

  6. VS简单注释插件——VS插件开发续

    VS简单注释插件——VS插件开发续 前些时候,我写过一篇<VS版权信息插件——初试VS插件开发小记>分享过一个用于添加注释信息的插件,但那个插件有几个问题: 不能添加带块注释(/**/), ...

  7. 从零开始学C++之STL(四):算法简介、7种算法分类

    一.算法 算法是以函数模板的形式实现的.常用的算法涉及到比较.交换.查找.搜索.复制.修改.移除.反转.排序.合并等等. 算法并非容器类型的成员函数,而是一些全局函数,要与迭代器一起搭配使用. 算法的 ...

  8. 自己动手写spring容器(2)

    上篇我们自己写了一个很简单的spring容器,该容器只是做了简单的bean的实例化,并没有spring的核心之一的IOC(依赖注入),也叫做控制反转,这里我就不讲这个的具体含义,不知道的园友可以自行百 ...

  9. MS SQL SERVER 2008 使用OBJECT_ID判断临时表是否存在

    MS SQL SERVER 2008 使用OBJECT_ID判断临时表是否存在 我们在写sql 脚本的时候经常会用到临时表,有时间也需要根据临时表是否存在做一些逻辑处理.还好sql server已经集 ...

  10. [置顶] javascript-基于对象or面向对象?

    最近完成了javascript的初级学习,在这个学习的视频中,我特别注意了两个词,解释性语言和对象,javascript按照我的理解,应该是种解释性语言,他有关于面向对象的思想的体现,但是,他和vb一 ...