We recently released an update for the Microsoft Drivers for PHP for SQL Server. Version 5.8.1 of the SQLSRV and PDO_SQLSRV drivers only applies to Linux and macOS platforms and adds production support for Alpine Linux.
Notable items about this release since the previous production release include:
Fixed
- Pull Request #1094 - Fixed default locale issues in Alpine Linux
- Pull Request #1095 - Removed unnecessary data structure to support Client-Side Cursors feature in Alpine Linux
- Pull Request #1095 - Fixed logging issues when both drivers are enabled in Alpine Linux
Limitations
- No support for inout / output params when using sql_variant type
- No support for inout / output params when formatting decimal values
- In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work
- Always Encrypted requires MS ODBC Driver 17+
- Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported
- Issue #716 - With Always Encrypted enabled, named parameters in subqueries are not supported
- Issue #1050 - With Always Encrypted enabled, insertion requires the column list for any tables with identity columns
- Always Encrypted limitations
Known Issues
- Connection pooling on Linux or macOS is not recommended with unixODBC < 2.3.7
- When pooling is enabled in Linux or macOS
- unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages
- due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples here
Survey
Let us know how we are doing and how you use our drivers by taking our pulse survey.
Install
- On Linux and macOS run the commands below:
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
- Windows DLLs for PHP 7.2 or above can be downloaded from the PECL repository for SQLSRV or PDO_SQLSRV, however the Windows binaries for 5.8.1 do not contain any changes over 5.8.0.
- Direct downloads for released binaries can also be found at the Github release tag.
David Engel