An update release to the Microsoft Drivers for SQL Server for PHP 2.0 is now available. You can download it here and you can read what Ashay Chaudhary (Program Manager for the drivers) had to say about the release here. The release contains fixes for 4 bugs:
- Long column names allowed by SQL Server (up to 128 characters) were incorrectly truncated to 29 chars. Any application that attempted to use column names allowed by SQL Server stopped working. The update release correctly handles column names up to 128 characters.
- PDO::quote() added a null terminator to the end of the string. The update release does not add a null terminator to the end of the quoted string.
- An error could occur when binding null data to server columns of type varbinary, binary, or varbinary(max). The update release will not throw an error if one specifies binary encoding (PDO::SQLSRV_ENCODING_BINARY) using the $driver_options parameter of PDOStatement::bindParam().
- An access violation could occur in the error handler routine for some error cases, causing the PHP process to abruptly stop. These error handler routines in the update release will no longer cause an access violation.
I think it is worth noting that 3 of the fixes in in this update release were in response to reports by people who are using the drivers. Rob Allen blogged about the first issue above here. The next two were reported on the forum, here and here. The last issue was discovered by the PHP Driver team as part of their regular code review process. So, keep reporting issues when you think you discover them…the team is serious about fixing them and making sure both the SQLSRV and PDO_SQLSRV drivers are high quality drivers. And, lastly, if you are using either driver now, be sure to upgrade to this latest release ASAP.