Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #11637

Re: PDO - Cannot retrieve warnings with emulated prepares disabled

Message-ID <2068453.fuPD5SocO2@PointedEars.de> (permalink)
From Thomas 'PointedEars' Lahn <PointedEars@web.de>
Organization PointedEars Software (PES)
Date 2013-10-29 21:50 +0100
Subject Re: PDO - Cannot retrieve warnings with emulated prepares disabled
Newsgroups comp.lang.php
References (1 earlier) <12356089.gSGYd4PIy3@PointedEars.de> <l4o9qm$1u3$1@news.albasani.net> <l4obdq$2ra$1@dont-email.me> <l4ojrc$mjc$1@news.albasani.net> <l4p4lj$um3$1@dont-email.me>

Show all headers | View raw


Jerry Stuckle wrote:

> On 10/29/2013 11:22 AM, Thomas Mlynarczyk wrote:
>> Jerry Stuckle schrieb:
>>> I could be wrong, but from my experience, the mysql driver has never
>>> supported prepared statements, while the mysqli driver has always
>>> supported them.  This is why PDO has to emulate the prepared statements.

AISB, that is utter nonsense.  “mysql”, “mysqli”, and “pdo_mysql” (the PDO 
driver for MySQL) are *different* drivers (for the *same* *third-party* 
client library) and have no dependency on each other whatsoever.

Also, while the “mysql” extension does not provide a *convenience API* for 
Prepared Statements (PS), and it is recommended not to use the “mysql” 
extension at all, you *can* still use PSs with it; they are, after all, part 
of the MySQL statement syntax:

$ php -r '
  mysql_connect("localhost", "…", "…");
  mysql_query("PREPARE stmt1 FROM \"SELECT SQRT(POW(?,2) + POW(?,2)) AS 
hypotenuse\";");
  mysql_query("SET @a = 3;");
  mysql_query("SET @b = 4;");
  $result = mysql_query("EXECUTE stmt1 USING @a, @b;");
  var_dump(mysql_fetch_array($result));'
array(2) {
  [0] =>
  string(1) "5"
  'hypotenuse' =>
  string(1) "5"
}

(Example from
<http://dev.mysql.com/doc/refman/5.1/en/sql-syntax-prepared-statements.html>)

>> This is what PDO tells me about the driver being used:
>> PDO::ATTR_CLIENT_VERSION => mysqlnd 5.0.10 - 20111026
> 
> Ok, so you're using MySQL's driver for PHP 5.4+.  That's good; it
> supports everything.

You have it backwards and utterly wrong on top of that.  He is _not_ using 
“MySQL's driver for PHP 5.4+”.  He is using PDO_MySQL – a PDO driver for 
MySQL – that accesses a MySQL client library on his system (that has nothing 
to do with PHP) of version 5.0.10.  PDO and PDO_MySQL are available since 
PHP 5.0.

Do you understand the difference?

And if he is using that older client library to access a MySQL 5._1_ server, 
it is _not_ good.  (Even though prepared statements should not be an issue 
then – they are supported since MySQL 4.1 –, but in my experience a MySQL 
version mismatch tends to cause problems.)


PointedEars
-- 
Use any version of Microsoft Frontpage to create your site.
(This won't prevent people from viewing your source, but no one
will want to steal it.)
  -- from <http://www.vortex-webdesign.com/help/hidesource.htm> (404-comp.)

Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-28 23:30 +0100
  Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-10-29 13:10 +0100
    Re: PDO - Cannot retrieve warnings with emulated prepares disabled Tim Streater <timstreater@greenbee.net> - 2013-10-29 12:23 +0000
    Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-29 13:31 +0100
      Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-10-29 13:47 +0100
        Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-29 16:26 +0100
          Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-10-29 19:19 +0100
            Re: PDO - Cannot retrieve warnings with emulated prepares disabled Jerry Stuckle <jstucklex@attglobal.net> - 2013-10-29 15:55 -0400
              Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-10-29 21:06 +0100
                Re: PDO - Cannot retrieve warnings with emulated prepares disabled Jerry Stuckle <jstucklex@attglobal.net> - 2013-10-29 20:57 -0400
                Re: PDO - Cannot retrieve warnings with emulated prepares disabled Christoph Michael Becker <cmbecker69@arcor.de> - 2013-10-30 02:59 +0100
                Re: PDO - Cannot retrieve warnings with emulated prepares disabled Jerry Stuckle <jstucklex@attglobal.net> - 2013-10-29 22:04 -0400
      Re: PDO - Cannot retrieve warnings with emulated prepares disabled Jerry Stuckle <jstucklex@attglobal.net> - 2013-10-29 08:58 -0400
        Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-29 16:22 +0100
          Re: PDO - Cannot retrieve warnings with emulated prepares disabled Jerry Stuckle <jstucklex@attglobal.net> - 2013-10-29 16:09 -0400
            Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-10-29 21:50 +0100
              Re: PDO - Cannot retrieve warnings with emulated prepares disabled Jerry Stuckle <jstucklex@attglobal.net> - 2013-10-29 21:01 -0400
            Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-29 23:11 +0100
              Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-10-30 01:12 +0100
                Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-30 15:38 +0100
              Re: PDO - Cannot retrieve warnings with emulated prepares disabled Jerry Stuckle <jstucklex@attglobal.net> - 2013-10-29 21:10 -0400
                Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-30 15:51 +0100
  Re: PDO - Cannot retrieve warnings with emulated prepares disabled Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2013-10-30 21:09 +0100

csiph-web