l i n u x - u s e r s - g r o u p - o f - d a v i s
L U G O D
 
Next Meeting:
December 2: Social gathering
Next Installfest:
TBD
Latest News:
Nov. 18: Club officer elections
Page last updated:
2001 Dec 30 17:04

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] Perl question, DBI - Why no selectcol_array method?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] Perl question, DBI - Why no selectcol_array method?


  • Subject: Re: [vox-tech] Perl question, DBI - Why no selectcol_array method?
  • From: Micah Cowan <micah@cowanboxMAPS.com>
  • Date: Fri, 27 Apr 2001 13:55:10 -0700
  • References: 009401c0cf5a$814a4b70$da4bf8aa@a21m

On Fri, Apr 27, 2001 at 03:28:58PM -0500, Jay Strauss wrote:
> In DBI there is:
> 
>       $ary_ref = $dbh->selectrow_arrayref($statement);
>       @row_ary = $dbh->selectrow_array($statement);
> 
> but only
> 
>       $ary_ref = $dbh->selectcol_arrayref($statement);
> 
> Why??? (i.e why no @col_ary = $dbh->selectcol_array($statement))

Dunno.  You'll have to ask the author  :)

> 
> I know how to access the individual elements (i.e. $ary_ref->[0])
> 
> But how do I put it an $ary_ref in a foreach?
> 
> foreach my $name ($ary_ref = $dbh->selectcol_arrayref($statement))
> {
> ...stuff;
> }

Well,

foreach my $name (@{ $ary_ref = $dbh->selectcol_arrayref($statement)})
{
  ...stuff;
}

would, since variable type-prefixes can be followed by a "block" whose
value is a reference to the type indicated by the prefix.

But, I'd prefer:

$ary_ref = $dbh->selectcol_arrayref($statement)
foreach my $name (@$ary_ref)
{
...stuff;
}

-Micah


LinkedIn
LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
facebook
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
O'Reilly and Associates
For numerous book donations.