oracle - sql loader 需要 dat 文件来加载数据
问题描述
我有一个包含多个文件的文件夹,但它们不是 .dat。令我惊讶的是,我可以加载一个文件,但只有当我重命名为 .dat 时。我做错了什么或者我需要将所有文件重命名为 .dat ?我的文件没有扩展名
多谢你们
控制文件
load data
infile 'D:\pageviews\year=2016\month=06\*'
replace
into table test
fields terminated by whitespace
trailing nullcols
(
c1,
c2,
c3,
c4
)
解决方案
据我所知,INFILE
您使用的子句是错误的。
您应该命名您正在加载的文件。当数据(即将加载)包含在控制文件本身(在BEGINDATA
关键字之后)时,使用星号。
如果您不指定文件扩展名,则默认为 .dat(这就是您设法加载文件的原因)。
可能的情况(从文档中复制):
- 控制文件本身包含的数据:
INFILE *
- 包含在名为 foo 的文件中的数据,默认扩展名为 .dat:
INFILE foo
- 包含在名为 datafile.dat 的文件中的数据,并指定了完整路径:
INFILE 'c:/topdir/subdir/datafile.dat'
阅读文档;你应该(不)做什么会更清楚。
推荐阅读
- amazon-web-services - 如何将 Flutter CameraImage 从图像流转换为 Base64 编码的二进制数据对象
- javascript - Websocket关闭事件不会在服务器上触发 - node.js
- angularjs - 如何在 angulsr JavaScript 中使用调用 API 加载 JSON 数据?
- swagger-codegen - 使用 swaggerhub 创建 hashmap
- javascript - 以清晰的格式显示 json 数据
- javascript - 不确定如何在 JS 中映射未知值(反应)
- json - 如何修复 Angular 中的“_co.x is undefined”错误?
- android - 使用android studio制作的应用程序只在一部手机上显示广告,而在其他手机上不显示
- javascript - 在 php mysqli 中需要正确的 Begin、Commit 和 RollBack 事务语法
- vb.net - IIS .Net 运行时错误上的 Googlewebauthorizationbroker.AuthorizeAsync