Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re^2: Display row number perl DBI

by romy_mathew (Beadle)
on May 28, 2012 at 17:50 UTC ( #972853=note: print w/ replies, xml ) Need Help??


in reply to Re: Display row number perl DBI
in thread Display row number perl DBI

Hi Thanks that worked ...but what if I need to use a variable in limit e.g

my $temp = 50;

$sth = $dbh->prepare('Select @rownum:=@rownum+1 rank, p.* from player +p, (SELECT @rownum:=0) r order by score desc limit $temp');


Comment on Re^2: Display row number perl DBI
Re^3: Display row number perl DBI
by moritz (Cardinal) on May 28, 2012 at 18:13 UTC

    You use placeholders:

    $sth = $dbh->prepare('Select @rownum:=@rownum+1 rank, p.* from player ++p, (SELECT @rownum:=0) r order by score desc limit ?'); # and later $sth->execute($temp);

    This is generally safer than interpolating variables into SQL strings, and prevents SQL injection attacks.

    See also: DBI, and perlop for the rules about string interpolation and escaping.

Re^3: Display row number perl DBI
by vinian (Beadle) on May 29, 2012 at 08:45 UTC
    you can also use backslash
    $sth = $dbh->prepare("Select \@rownum:=\@rownum+1 rank, p.* from playe +r +p, (SELECT \@rownum:=0) r order by score desc limit $temp");
    but it looks a little oddly

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://972853]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (5)
As of 2014-07-31 05:00 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (244 votes), past polls