每个文件都有Oracle外部表

时间:2018-04-26 09:01:21

标签: oracle

我的问题是,如果我有一个dicrectory,例如4个具有相同结构的文件,我是否需要为每个文件创建一个外部表,或者我可以在目录的顶部创建表并有1个外部表到4个文件。

由于

1 个答案:

答案 0 :(得分:1)

external tables conceptsexmaples所示,您可以在locations子句中指定多个文件:

...
LOCATION ('file1.csv', 'file2.csv', 'file3.csv', 'file4.csv')
...

如果它们位于不同的目录中,您可以使用相关的目录名称为每个文件名添加前缀:

  
      
  • LOCATION - 指定外部表的数据文件。

         
        
    • 对于ORACLE_LOADERORACLE_DATAPUMP,文件以 directory:file 的形式命名。目录部分是可选的。如果缺少,则默认目录用作文件的目录。如果您使用的是ORACLE_LOADER访问驱动程序,则可以在文件名中使用通配符:星号(*)表示多个字符,问号(?)表示单个字符。
    •   
  •   

......但这似乎与您的情况无关。

除非您使用通配符,否则文件的编号和名称是固定的。

如果您将始终拥有相同数量的文件但名称不同,则可以添加preprocess子句以重命名其他文件以匹配这些预期名称;或者更实际的是,只需要一个虚拟的预期名称和use a preprocessor来将所有文件组合成一个访问驱动程序实际使用的标准输出流。