PERL_fresher has asked for the wisdom of the Perl Monks concerning the following question:
use DBI; require '_ENV.pl'; my $dbh = DBI->connect("dbi:CSV:f_dir=$_ENV::TempFilesDIR;csv_sep_char +=\\~") or die $DBI::errstr; $dbh->{'csv_tables'}->{'new_entrant'} = { 'file' => 'Aviva_cimp_ +new_entrant.txt', col_names => [qw(emp_no +cat_no forename surname initial ni_no ttl gender mrtl_sts + dob hmeadd1 hmeadd2 hmeadd3 hometown county homepost emp_cntr +btn emplyr_ctr anl_sal doj_schm dojcmpny exchanged schm_jnr) ] }; $dbh->{'csv_tables'}->{'workday'} = { 'file' => 'workday_mst +r_final.csv'}; my $query = "SELECT Employee_Number,Forename,Surname,Home_Address_Line +_1,Home_Address_Line_2,Home_Address_Line_3,Home_Town_City,Home_County +,Home_Post_Code FROM workday"; my $sth = $dbh->prepare ($query); $sth->execute(); $sth->bind_columns (\my ($wrk_emp_no,$wrk_forename,$wrk_surname,$wrk_h +me_add1,$wrk_hme_add2,$wrk_hme_add3,$wrk_hme_city,$wrk_hme_cnty,$wrk_ +postcode)); while (my $row = $sth->fetch) { $dbh->do('UPDATE new_entrant SET forename=?,surname=?,hmeadd1=?,hmeadd +2=?,hmeadd3=?,hometown=?,county=?,homepost=? WHERE emp_no=?',undef,$w +rk_forename,$wrk_surname,$wrk_hme_add1,$wrk_hme_add2,$wrk_hme_add3,$w +rk_hme_city,$wrk_hme_cnty,$wrk_postcode,$wrk_emp_no) or die $DBI::err +str; } $sth->finish(); $dbh->disconnect();
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: CSV Update Issues
by Tux (Canon) on May 12, 2015 at 10:51 UTC | |
|
Re: CSV Update Issues
by hippo (Archbishop) on May 12, 2015 at 10:50 UTC | |
by Tux (Canon) on May 12, 2015 at 10:53 UTC |