Souce Data X~Y~Z 1~2~3 col1~col2~col3~col4~col5 A~B~C~D~E #### my $dbh = DBI->connect("dbi:CSV:",undef,undef,{ f_dir => $_ENV::TempFilesDIR, csv_sep_char => "~", csv_quote_space => 0}) or die $DBI::errstr; $dbh->{'csv_tables'}->{'cimp_money'} = { 'file' => 'Aviva_cimp_money_positive.txt', col_names => [qw(rcrd_type seq_no emp_no forename surname initial ni_no ttl gender dob emp_cntrbtn emplyr_ctr tax_period tax_yr exch_amt)] $dbh->do('UPDATE cimp_money SET forename=?,surname=? WHERE emp_no=?',undef,$wrk_forename,$wrk_surname,$wrk_emp_no) or die $DBI::errstr; #### Output Data X~Y~Z~~ 1~2~3~~ col1~col2~col3~col4~col5 A~B~C~D~E