首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

自从有了电子数据处理,就有了平面文件flat file)。我们每天都会看到平面文件。前面讨论的警告日志就是一个平面文件。

我在Web上看到有关“平面文件”的以下定义,觉得这些定义实在太绕了:

平面文件是去除了所有特定应用(程序)格式的电子记录,从而使数据元素可以迁移到其他的应用上进行处理。这种去除电子数据格式的模式可以避免因为硬件和专有软件的过时而导致数据丢失。

平面文件是一种计算机文件,所有信息都在一个信号字符串中。

实际上,平面文件只是这样一个文件,其中每一“行”都是一个“记录”,而且每行都有一些定界的文本,通常用逗号或管道符号(竖线)分隔。通过使用遗留的数据加载工具SQLLDR或外部表,Oracle可以很容易地读取平面文件,实际上,我会在第15章详细讨论这个内容(还会在第10章谈到外部表)。不过,Oracle生成平面文件可就不那么容易了,不管由于什么原因,确实没有一个简单的命令行工具能把信息导出到一个平面文件中。诸如HTML DB和企业管理器之类的工具有助于完成这个过程,但是并没有一个官方的命令行工具可以轻松地在脚本中用来完成这个操作。

正是出于这个原因,所以我决定在这一章对平面文件说两句,我提议能有一些生成简单平面文件的工具。多年来,为此我开发过3种方法,每种方法都各有特点。第一种方法是使用PL/SQLUTL_FILE(利用动态SQL)来完成任务。如果数据量不大(几百或几千行),这个工具则有足够的灵活性,速度也不错。不过,它必须在数据库服务器主机上创建文件,但有时我们并不想在数据库服务器上创建文件。因此,我又开发了一个 SQL*Plus实用程序,可以在运行SQL*Plus的机器上创建平面文件。由于SQL*Plus可以连接网络上任何位置的Oracle服务器,所以能从网络上的任何数据库把任何数据卸载到一个平面文件中。最后,如果速度要求很高,那么非C莫属。为此,我还开发了一个Pro*C命令行卸载工具来生成平面文件。这些工具都可以从http://asktom.oracle.com/~tkyte/flat/index.html免费得到,另外我还会在这里提供为了把数据卸载到平面文件而开发的新工具。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论