Oracle sql loader需要dat文件来加载数据

Oracle sql loader需要dat文件来加载数据,oracle,sql-loader,Oracle,Sql Loader,我有一个包含多个文件的文件夹,但它们不是.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,

我有一个包含多个文件的文件夹,但它们不是.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
)

据我所知,您使用的
infle
子句是错误的

您应该为正在加载的文件命名。当数据(即将加载)包含在控制文件本身中时(在
BEGINDATA
关键字之后),使用星号

如果未指定文件扩展名,则默认为.dat(这就是您设法加载文件的原因)

可能的案例(复制自):

  • 控制文件本身包含的数据:
    infle*
  • 包含在名为foo且默认扩展名为.dat的文件中的数据:
    infle foo
  • 包含在名为datafile.dat的文件中的数据,指定了完整路径:
    infle'c:/topdir/subdir/datafile.dat'

阅读文档;你应该(不应该)做什么会更清楚。

如果我想加载几个喜欢使用的文件,我会感到困惑。来吧,严肃点。我贴了一个链接,让你看上面写的东西。我把整个文件复制/粘贴到这里没有意义。如果你这么做了,你会看到“指定多个数据文件”一章,其中描述了你应该做什么以及如何做。对不起,我没有看到链接可能是因为我使用了隐形墨水:)好的,既然你发现了,我真的建议你读一下。SQL*Loader是一个很好的工具,有很多选择,肯定会帮助您完成这项工作。祝你好运!