#35801 [NEW]: Prepared statement with "LIMIT :limit"
From: brice dot joly at free dot fr
Operating system: Windows XP
PHP version: 5.1.1
PHP Bug Type: PDO related
Bug description: Prepared statement with "LIMIT :limit"
Description:
------------
As of MySQL 5.0.7, placeholders can be used in the LIMIT clause when using
prepared statements (http://dev.mysql.com/doc/refman/5.0/en/select.html).
Will this feature make it to PDO?
Friendly input: array(':limit' => 10) as well as "pager" input
array(':limit' => array(10, 10)) would make sense for the MySQL driver
since it understands both syntaxes.
Reproduce code:
---------------
Prepared SQL query:
SELECT * FROM table LIMIT :limit
with bindParam(':limit', 10), prepared statement sent to DB will be:
SELECT * FROM table LIMIT "10"
Expected result:
----------------
Double quotes on LIMIT value will raise a MySQL Error 1064: You have an
error in your SQL syntax; check the manual that corresponds to your MySQL
server version for the right syntax to use near '"10"' at line 1. Of
course MySQL expects
SELECT * FROM table LIMIT 10
Actual result:
--------------
Apache crashes, log reads:
Parent: child process exited with status 3221225477 -- Restarting.
No Exception/PHP Error, tested on WinXP, Apache/2.0.52, PHP 5.1.1, MySQL
5.0.17
--
Edit bug report at http://bugs.php.net/?id=35801&edit=1
--
Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=35801&r=trysnapshot44
Try a CVS snapshot (PHP 5.1): http://bugs.php.net/fix.php?id=35801&r=trysnapshot51
Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=35801&r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=35801&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=35801&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=35801&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=35801&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=35801&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=35801&r=support
Expected behavior: http://bugs.php.net/fix.php?id=35801&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=35801&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=35801&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=35801&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=35801&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=35801&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=35801&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=35801&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=35801&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=35801&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=35801&r=mysqlcfg
Thread (4 messages)
- brice dot joly at free dot fr