[php-src] Issue #15219: odbc_fetch_*() fails to fetch SQL Server text fields with SQL_CUR_USE_ODBC

From: Date: Sat, 03 Aug 2024 18:50:32 +0000
Subject: [php-src] Issue #15219: odbc_fetch_*() fails to fetch SQL Server text fields with SQL_CUR_USE_ODBC
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-247427@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/15219 Author: danielmarschall ### Description The following code: ```php $conn = odbc_connect('DRIVER={SQL Server Native Client 11.0};SERVER=LOCALHOST\SQLSERVER;DATABASE=OIDPLUS;charset=UTF-8;Client_CSet=UTF-8;Server_CSet=UTF-8', 'sa', '123456', SQL_CUR_USE_ODBC); $res = odbc_exec($conn, "select description from my_objects"); while ($row = odbc_fetch_object($res)) { var_dump($row); } echo odbc_close($conn); ``` Resulted in this output: ``` (Nothing; odbc_fetch_object is false) ``` But I expected this output instead: ``` Printed array with descriptions ``` The bug only happens if odbc_connect() has SQL_CUR_USE_ODBC and it ONLY fails if you fetch exactly one column with the text data type. If you fetch a text row and another row, then it works! - select description from my_objects does NOT work - select id, description from my_objects WORKS - select id from my_objects WORKS System: - Windows 10 Pro - SQL Server 2022 ### PHP Version PHP 8.3.6 (also tested with PHP 8.4 Alpha 4) ### Operating System Windows 10 x64

« previous php.bugs (#247427) next »