my @player_list = ('john','peter','mary','joseph'); #Prodedure $sth = $dbh->prepare(q(BEGIN :ret := Proc.getPlayerIds(:in_player_list,:out_list_ids);END;) $sth->bind_param_inout(':ret',\$ret, 1024); $sth->bind_param(':in_player_list', \@player_list, 0, {ora_type => ORA_RSET}) or croak sth->errstr; $sth->bind_param_inout('::out_list_ids', \$ids, 0, {ora_type => ORA_RSET}) or croak sth->errstr;