#!/usr/local/bin/perl use strict; use DBI; #------------ # input: string of variables # output: array of variables #------------ sub str2array { my ($str)=@_; my @cols; push(@cols,split(",",$str)); foreach my $var (@cols) { $var=$1 if ($var=~/^\s+(\w+)/ || $var=~/(\w+)\s+$/); $var="\$".$var; } return (\@cols); } sub makeview { my @input=@_; my $view=$input[0]; my $columns=$input[1]; chomp $columns; my $sql="select $columns from $view"; my $sth=$dbh->prepare($sql); $sth->execute(); my $varref=str2array($columns); # ref my @vararr=@$varref; # array of var my $variable foreach $variable (@vararray); $sth->bind_columns(); my $hv; foreach my $e (@varrarr) { $hv.="my $e\;"; } }