> -----Original Message-----
> > This is in continuation with the above mentioned subject - 
> I am trying to
> > find the 'display data order' for the returned resultset. 
> The following
> > thread very well answers my question:
> >
> >  http://lists.mysql.com/mysql/185626
> >
> > a) SET @row=0;
> > b) SELECT (@row:[EMAIL PROTECTED]) AS row, ename, empno FROM emp 
> ORDER BY empno;
> >
> > +-----+--------+-------+
> > | row | ename  | empno |
> > +-----+--------+-------+
> > |   1 | SMITH  |  7369 |
> > |   2 | ALLEN  |  7499 |
> > |   3 | WARD   |  7521 |
> > |   4 | JONES  |  7566 |
> > |   5 | MARTIN |  7654 |
> > +-----+--------+-------+
> >
> > However, I am trying to use it in a perl script instead of 
> from command line,
> > and I am not sure how exactly to do it. I need to execute 
> both statements a &
> > b together or else I get
> >
> > +-----+--------+-------+
> > | row | ename  | empno |
> > +-----+--------+-------+
> > |NULL | SMITH  |  7369 |
> > |NULL | ALLEN  |  7499 |
> > |NULL | WARD   |  7521 |
> > |NULL | JONES  |  7566 |
> > |NULL | MARTIN |  7654 |
> > +-----+--------+-------+
> >
> > How can I execute both (a) and (b) in my perl script?
> >
> > Thanks for any help.
> > Nishi

Hi,
You don"t need to use @row in perl,
just use :

$n=0;
while (fetch..) {
$n++;
print "$n"."$ename ...\n";

}

Mathias

I could, but I am assigning the entire resultset in one shot to another 
construct as follows:

my $str  = "SELECT [EMAIL PROTECTED]:[EMAIL PROTECTED] as row, <fields> FROM 
<tables> WHERE ...";
my $sth = $conn->prepare($st);
$sth->execute();
return $sth->fetchall_arrayref( {} );

Thanks,
-Nishi


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to