#!/usr/local/bin/perl use strict; use warnings; use diagnostics; use Oracle::SQLLoader qw/$CHAR $INT $DECIMAL $DATE/; # Oracle Path $ENV{'ORACLE_HOME'} = "C:/oracle/ora92"; $ENV{'ORACLE_USER'} = "xxxx"; $ENV{'ORACLE_PASS'} = "xxxx"; $ENV{'ORACLE_SID'} = "xxxxx"; my $user = $ENV{'ORACLE_USER'}; my $pass = $ENV{'ORACLE_PASS'}; my $sid = $ENV{'ORACLE_SID'}; ### load a simple comma-delimited file to a single table my $ldr = new Oracle::SQLLoader( infile => 'C:\Sales_Report_Thru_12_March_2009.csv', terminated_by => ',', username => $user, password => $pass, sid => $sid ); $ldr->addTable(table_name => 'fs_bbbs_collections', when_clauses => "WHEN (01) <> 'Location_ID' and (01) <> 'Type_Description' and (01) <> 'Type_ID' and (01) <> 'DetailType' and (01) <> 'ItemCount' and (01) <> 'Amount'"); $ldr->addColumn(column_name => 'Location_ID'); $ldr->addColumn(column_name => 'Type_Description'); $ldr->addColumn(column_name => 'Type_ID'); $ldr->addColumn(column_name => 'DetailType'); $ldr->addColumn(column_name => 'ItemCount'); $ldr->addColumn(column_name => 'Amount'); $ldr->executeLoader(); # stats my $skipped = $ldr->getNumberSkipped(); my $read = $ldr->getNumberRead(); my $rejects = $ldr->getNumberRejected(); my $discards = $ldr->getNumberDiscarded(); my $loads = $ldr->getNumberLoaded(); my $beginTS = $ldr->getLoadBegin(); my $endTS = $ldr->getLoadEnd(); my $runtimeSecs = $ldr->getElapsedSeconds(); my $secsOnCpu = $ldr->getCpuSeconds();