Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

cidaris's scratchpad

by cidaris (Friar)
on Jul 22, 2004 at 14:16 UTC ( [id://376582] : scratchpad . print w/replies, xml ) Need Help??

Trying to dump the entire contents of an Oracle database to an internal flatfile so we can reverse engineer their ER diagram. (Vendor went out of business...)
## @column_names contains column names $sth = $dbh->prepare("SELECT ? FROM employees"); foreach my $column_name (@column_names){ $sth->execute($column_name) or error_somehow(); while($row = $sth->fetchrow_arrayref()){ print "Value in column $column_name: ".$row->[0]; } }
For my output I'm getting the column names:
EMPLOYEE_NAME
EMPLOYEE_NAME
EMPLOYEE_NAME
EMPLOYEE_NAME
EMPLOYEE_NAME
EMPLOYEE_NAME
EMPLOYEE_SALARY
EMPLOYEE_SALARY
EMPLOYEE_SALARY
EMPLOYEE_SALARY
EMPLOYEE_SALARY
EMPLOYEE_SALARY


I'd much rather get the column contents... Does prepare not understand what I'm doing? Is there an alternative method short of writing a statement for every table?

Conceptually, I'm trying to do "SELECT * FROM *" and filtering out BLOBs, etc.