It seems I am not able to integrate array, scalar, reference and variables using an undefined "" parameter.
The code explains better than me:
# When it is not typed, the arguments will start as "" blank # (which means all ids) @id = ""; # Check typed argument ("-id1", duplicated or none) foreach my $arg (@ARGV) { if ($arg =~ /^--?id(\d+)$/) { die "Error: Multiple ids specified: -id@id and $arg.\n" if ( +$id[0]); @id = $1 ; next; } } # Exec problem if ($id[0] eq "") { my $sql = "SELECT DISTINCT id FROM mytable WHERE active = ?"; @id = @{$dbh->selectall_arrayref($sql,undef,'no')}; print join (", ", @id), "\n"; }
Output error:
Running SELECT id FROM mytable WHERE id=? AND salary >= 1 for ARRA +Y(0x1011e70) ID: ARRAY(0x1011e70), 1 lines dumped to csvfile1_ARRAY(0x1011e70).csv
Output error when replaced $id[0] to @id at if conditional: if (@id eq "")
Argument "" isn't numeric in subroutine entry at ./test.pl line 108.
In reply to Re^7: Multiple queries on DBI corresponding to multiple csv files?
by jtech
in thread Multiple queries on DBI corresponding to multiple csv files?
by jtech
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |