ID:               40289
 Updated by:       [EMAIL PROTECTED]
 Reported By:      podunk dot vn at gmail dot com
-Status:           Open
+Status:           Feedback
 Bug Type:         PDO related
 Operating System: windows xp sp2/IIS/ASAPI
 PHP Version:      5.2.0
 New Comment:

Please try using this CVS snapshot:

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




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

[2007-01-30 16:03:24] podunk dot vn at gmail dot com

Description:
------------
When selecting a varbinary(MAX) field from a microsoft sql 2005
database, using the Microsoft ODBC Driver Manager for SQL, and binding
the result to a PHP variable, the Driver Manager fails with the
following error:

array (
  0 => 'HY090',
  1 => 0,
  2 => '[Microsoft][ODBC Driver Manager] Invalid string or buffer
length (SQLBindCol[0] at ext\\pdo_odbc\\odbc_stmt.c:430)',
  3 => 'HY090',
)

More information on HY090 can be found at:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odbc/htm/odbcsqlbindcol.asp

Just a guess: the BufferLength isn't being set in odbc_stmt.c
somewhere.

Reproduce code:
---------------
$stmt = $db->prepare("select data from cms_files where fid=11");
$db->execute($stmt);
$db->bindColumn($stmt, 1, $lob, PDO::PARAM_LOB);
$db->fetch_bound($stmt);

Expected result:
----------------
$lob populated with binary data.

Actual result:
--------------
Driver Manager throws:

array (
  0 => 'HY090',
  1 => 0,
  2 => '[Microsoft][ODBC Driver Manager] Invalid string or buffer
length (SQLBindCol[0] at ext\\pdo_odbc\\odbc_stmt.c:430)',
  3 => 'HY090',
)


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


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

Reply via email to