The sql_loader plugin invokes Oracle SQL*Loader to load files into a database table. The SQL*Loader controlfile is generated from the specification in the item parameters:
name. The name of this item.
user_id. The username and password used to authenticate against the database, in the format <user>/<password>@<tns_alias> where @<tns_alias> is optional. If the userid is not supplied, the standard pipeline authentication settings are used.
controlfile. The name of the SQL*Loader controlfile that will be generated.
specification. The SQL*Loader control file specification. If the specification spans multiple lines, the final character of each line must be a backslash. The final field must be file_id constant %file_id%.
table. The name of the table being loaded.
mode. append, truncate, insert or replace. Defaults to append.
is_warning_error. Should a SQL*Loader warning be treated as an error (e.g. when a bad record is detected).
logfile. The name of the SQL*Loader log file.
badfile. The name of the SQL*Loader bad file.
discardfile. The name of the SQL*Loader discard file.
keep_logfile. Whether the log file will be kept after the completion of the item. Defaults to yes (1).
keep_controlfile. Whether the control file will be kept after the completion of the item. Defaults to no (0).
keep_badfile. Whether the bad file will be kept after the completion of the item. Defaults to yes (1).
keep_discardfile. Whether the discard file will be kept after the completion of the item. Defaults to yes (1).
localize. A boolean setting that instructs the loader to localize the end-of-line markers for the current file system. Defaults to 0.
parameters. A section containing SQL*Loader options.
on_error. Override the setting for the job..
<item> name = load scores type = sql_loader controlfile = %app_root%/log/%basename(filename)%.ctl # default = %filename%.ctl table = scores mode = truncate is_warning_error = 1 # Specification: use slash at the end-of-line to signal # continuity. You must always include "file_id constant %file_id%" specification = fields terminated by "," \ (id, name, score, file_id constant %file_id%) # These are optional. If the filename never changes (i.e. it # has the same name with every load, you may wish to include $$ # in the name to include the OS process id in the name. This # id will not be unique as process ids are reused. logfile = %app_root%/log/%basename(filename)%.log badfile = %app_root%/log/%basename(filename)%.bad discardfile = %app_root%/log/%basename(filename)%.disc keep_controlfile = 1 # Default no, probably keep during initial dev keep_logfile = 1 # Optional. Default yes keep_badfile = 1 # Optional. Default yes localize = 0 # Optional SQL*Loader keywords <parameters> skip = 1 direct = true </parameters> </item>
To install ETLp, copy and paste the appropriate command in to your terminal.
cpanm
cpanm ETLp
CPAN shell
perl -MCPAN -e shell install ETLp
For more information on module installation, please visit the detailed CPAN module installation guide.