oracle - Oracle SQLLDR - 使用参数文件指定多个日志、dsc、坏文件
问题描述
我不确定如何使用 Oracle SQLLDR 将文件加载到单个表中来处理这种情况。我有多个 infile,我可以毫无问题地加载它们。但是,我想在我的参数文件中为每个日志文件、坏文件和丢弃目录/文件。这可能吗?我试过在参数文件中列出它们,文件名之间有空格,但这似乎不起作用。我还没有找到如何在任何地方执行此操作的说明或示例。
我使用命令来包含参数文件:
sqlldr user/password@pdbxxxxx PARFILE=/directory/parameter_file.par
我的参数文件示例:
CONTROL=/directory/control_file.ctl
LOG=/directory/log_file.log
BAD=/directory/bad_file.bad
DISCARD=/directory/discard_file.dsc
DISCARDMAX=100000000
DATA=/directory/data_file-01.csv
DIRECT=FALSE
我的控制文件示例:
load data
infile '/directory/data_file-01.csv'
infile '/directory/data_file-02.csv'
infile '/directory/data_file-03.csv'
APPEND INTO TABLE my_table
fields terminated by "," optionally enclosed by '"'
TRAILING NULLCOLS
(
col1 CHAR
, col2 CHAR
, col3 CHAR
)
解决方案
看起来像指定多个数据文件,如文档中所述。
摘抄:
要在一次 SQL*Loader 运行中从多个数据文件加载数据,请对每个数据文件使用 INFILE 子句。
您还可以为每个数据文件指定单独的丢弃文件和坏文件。在这种情况下,必须在每个数据文件名之后立即声明单独的坏文件和丢弃文件。
几个例子:
INFILE mydat1.dat BADFILE mydat1.bad DISCARDFILE mydat1.dis
INFILE mydat2.dat
INFILE mydat3.dat DISCARDFILE mydat3.dis
推荐阅读
- speech-to-text - 在谷歌的语音转文字直播中,如果用户不说话,谷歌会向我收费吗?
- reactjs - 'dispatch' 未定义 - mapDispatchToProps 未通过路由器
- reactjs - 我将如何重用这些功能而不是每个文本字段都有一个?
- html - Spring Boot MVC: css/js files read as JSON
- docker - Docker does not update volume inside container
- python - how to resolve changes in Element's id in html?
- excel - Excel VBA Macro "randomly" naming sheets as "0" rather than specified text
- javascript - Show mutiple v-dialog boxes with different content in vue.js
- javascript - JavaScript find highest version from array of dotted versions
- google-chrome - Bat file open chrome in app mode with focus