ID:               34625
 User updated by:  stewey at ambitious dot ca
 Reported By:      stewey at ambitious dot ca
 Status:           Bogus
 Bug Type:         PDO related
 Operating System: Mac OS X 10.4.2
 PHP Version:      5CVS-2005-09-25 (snap)
 Assigned To:      wez
 New Comment:

Ok. Perhaps you should throw an exception when we give a 
cursor attribute to a mysql pdo driver. This should also be 
doc'd.


Previous Comments:
------------------------------------------------------------------------

[2005-10-12 14:36:17] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

MySQL does not support cursors and the driver cannot emulate them for
you.

------------------------------------------------------------------------

[2005-09-24 23:46:32] stewey at ambitious dot ca

Thanks for the info. Constant problem resolved, but the 
scrollable cursor problem remains. New repro code:

$PDO = new PDO(  
        "mysql:dbname=test;host=127.0.0.1", 
        'user', 'pass' );
$statement = $PDO->prepare("select id from table", 
        array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL) );
$statement->execute();
print_r($statement->fetch( PDO::FETCH_ASSOC,  
   PDO::FETCH_ORI_ABS, 1 ));
print_r($statement->fetch( PDO::FETCH_ASSOC, 
   PDO::FETCH_ORI_ABS, 1 ));
exit;

------------------------------------------------------------------------

[2005-09-24 13:36:13] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5-win32-latest.zip



------------------------------------------------------------------------

[2005-09-24 06:35:56] stewey at ambitious dot ca

Description:
------------
Preparing a statement with the PDO_ATTR_CURSOR => 
PDO_CURSOR_SCROLL driver option doesn't work with MySQL.

Reproduce code:
---------------
$PDO = new PDO(  
        "mysql:dbname=test;host=127.0.0.1", 
        'user', 'pass' );
$statement = $PDO->prepare("select id from table", 
        array(PDO_ATTR_CURSOR => PDO_CURSOR_SCROLL) );
$statement->execute();
print_r($statement->fetch( PDO_FETCH_ASSOC,  
   PDO_FETCH_ORI_ABS, 1 ));
print_r($statement->fetch( PDO_FETCH_ASSOC, 
   PDO_FETCH_ORI_ABS, 1 ));
exit;


Expected result:
----------------
I would expect to see the same row output twice. If this is 
not a support driver option, then I would expect and error or 
exception thrown (yes, exceptions are enabled).

Actual result:
--------------
Two different rows. The PDO_FETCH_ORI_ABS arguments are 
seemingly ignored.


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=34625&edit=1

Reply via email to