use strict; use warnings; use DBI; my $value = 45; my $dbh = DBI->connect("DBI:CSV:f_dir=.;csv_sep_char=\\;"); $dbh->{'csv_tables'}->{'my_table'} = { 'eol' => "\n", 'sep_char' => ";", 'quote_char' => undef, 'escape_char' => undef, 'file' => 'my_table.csv', 'col_names' => ["id", "value"] }; my $sth = $dbh->prepare(<execute($value) or die "Cannot execute: " . $sth->errstr(); $sth->bind_columns( \my $ret_1, \my $ret_2 ); while ( $sth->fetch() ) { print "key($ret_1) value($ret_2)\n"; } $sth->finish(); $dbh->disconnect(); exit;