Microsoft Drivers 5.9.0 Preview/Beta 2 for PHP for SQL Server Released

Published 12-02-2020 10:45 AM 1,603 Views
Senior Member

We recently released the next preview/beta of the Microsoft Drivers for PHP for SQL Server, version 5.9.0-beta2. This preview/beta release has been built with PHP 7.3+ and tested on all supported platforms.

 

Note: We have changed from "preview" to "beta" versioning terminology in order to support the new Pickle distribution channel. Pickle supports PECL packages so the drivers for PHP will be available via both channels.

 

Notable items about this release include:

 

Added

  • Support for PHP 8.0
  • Support for Pickle

Removed

  • Dropped support for PHP 7.2

Fixed

  • Pull Request #1205 - minimized compilation warnings on Linux and macOS
  • Pull Request #1209 - fixed a bug in fetching varbinary max fields as char or wide chars
  • Issue #1210 - switched from preview to beta terminology to enable Pickle support
  • Issue #1213 - the MACOSX_DEPLOYMENT_TARGET in config files caused linker errors in macOS Big Sur - Pull Request #1215

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

  • This preview release requires ODBC Driver 17.4.2 or above. Otherwise, a warning about failing to set an attribute may be suppressed when using an older ODBC driver.
  • 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-5.9.0beta2
sudo pecl install pdo_sqlsrv-5.9.0beta2

 

 

  • To download Windows DLLs for PHP 7.3 or above from the PECL repository, please navigate to SQLSRV or PDO_SQLSRV.
  • Direct downloads for released binaries can also be found at the Github release tag.

 

David Engel

%3CLINGO-SUB%20id%3D%22lingo-sub-1949885%22%20slang%3D%22en-US%22%3EMicrosoft%20Drivers%205.9.0%20Preview%2FBeta%202%20for%20PHP%20for%20SQL%20Server%20Released%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1949885%22%20slang%3D%22en-US%22%3E%3CP%3EWe%20recently%20released%20the%20next%20preview%2Fbeta%20of%20the%20Microsoft%20Drivers%20for%20PHP%20for%20SQL%20Server%2C%20version%205.9.0-beta2.%20This%20preview%2Fbeta%20release%20has%20been%20built%20with%20PHP%207.3%2B%20and%20tested%20on%20all%20supported%20platforms.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ENote%3A%20We%20have%20changed%20from%20%22preview%22%20to%20%22beta%22%20versioning%20terminology%20in%20order%20to%20support%20the%20new%20Pickle%20distribution%20channel.%20Pickle%20supports%20PECL%20packages%20so%20the%20drivers%20for%20PHP%20will%20be%20available%20via%20both%20channels.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ENotable%20items%20about%20this%20release%20include%3A%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EAdded%3C%2FP%3E%3CUL%3E%3CLI%3ESupport%20for%20PHP%208.0%3C%2FLI%3E%3CLI%3ESupport%20for%20Pickle%3C%2FLI%3E%3C%2FUL%3E%3CP%3ERemoved%3C%2FP%3E%3CUL%3E%3CLI%3EDropped%20support%20for%20PHP%207.2%3C%2FLI%3E%3C%2FUL%3E%3CP%3EFixed%3C%2FP%3E%3CUL%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fpull%2F1205%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3E%231205%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20minimized%20compilation%20warnings%20on%20Linux%20and%20macOS%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fpull%2F1209%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3E%231209%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20fixed%20a%20bug%20in%20fetching%20varbinary%20max%20fields%20as%20char%20or%20wide%20chars%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fissues%2F1210%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3E%231210%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20switched%20from%20preview%20to%20beta%20terminology%20to%20enable%20Pickle%20support%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fissues%2F1213%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3E%231213%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20the%20MACOSX_DEPLOYMENT_TARGET%20in%20config%20files%20caused%20linker%20errors%20in%20macOS%20Big%20Sur%20-%20Pull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fpull%2F1215%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3E%231215%3C%2FA%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%3CSPAN%3ELimitations%3C%2FSPAN%3E%3C%2FP%3E%3CUL%3E%3CLI%3ENo%20support%20for%20inout%20%2F%20output%20params%20when%20using%20sql_variant%20type%3C%2FLI%3E%3CLI%3ENo%20support%20for%20inout%20%2F%20output%20params%20when%20formatting%20decimal%20values%3C%2FLI%3E%3CLI%3EIn%20Linux%20and%20macOS%2C%20setlocale()%20only%20takes%20effect%20if%20it%20is%20invoked%20before%20the%20first%20connection.%20Attempting%20to%20set%20the%20locale%20after%20connecting%20will%20not%20work%3C%2FLI%3E%3CLI%3EAlways%20Encrypted%20requires%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fsql%2Fconnect%2Fodbc%2Flinux-mac%2Finstalling-the-microsoft-odbc-driver-for-sql-server%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3EMS%20ODBC%20Driver%2017%2B%3C%2FA%3E%3CUL%3E%3CLI%3EOnly%20Windows%20Certificate%20Store%20and%20Azure%20Key%20Vault%20are%20supported.%20Custom%20Keystores%20are%20not%20yet%20supported%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2FMicrosoft%2Fmsphpsql%2Fissues%2F716%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3E%23716%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20With%20Always%20Encrypted%20enabled%2C%20named%20parameters%20in%20subqueries%20are%20not%20supported%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fissues%2F1050%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3E%231050%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20With%20Always%20Encrypted%20enabled%2C%20insertion%20requires%20the%20column%20list%20for%20any%20tables%20with%20identity%20columns%3C%2FLI%3E%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fsql%2Fconnect%2Fphp%2Fusing-always-encrypted-php-drivers%23limitations-of-the-php-drivers-when-using-always-encrypted%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3EAlways%20Encrypted%20limitations%3C%2FA%3E%3C%2FLI%3E%3C%2FUL%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3EKnown%20Issues%3C%2FP%3E%3CUL%3E%3CLI%3EThis%20preview%20release%20requires%20ODBC%20Driver%2017.4.2%20or%20above.%20Otherwise%2C%20a%20warning%20about%20failing%20to%20set%20an%20attribute%20may%20be%20suppressed%20when%20using%20an%20older%20ODBC%20driver.%3C%2FLI%3E%3CLI%3EConnection%20pooling%20on%20Linux%20or%20macOS%20is%20not%20recommended%20with%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22http%3A%2F%2Fwww.unixodbc.org%2F%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EunixODBC%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%26lt%3B%202.3.7%3C%2FLI%3E%3CLI%3EWhen%20pooling%20is%20enabled%20in%20Linux%20or%20macOS%3A%3CUL%3E%3CLI%3EunixODBC%20%26lt%3B%3D%202.3.4%20(Linux%20and%20macOS)%20might%20not%20return%20proper%20diagnostic%20information%2C%20such%20as%20error%20messages%2C%20warnings%20and%20informative%20messages.%3C%2FLI%3E%3CLI%3Edue%20to%20this%20unixODBC%20bug%2C%20fetch%20large%20data%20(such%20as%20xml%2C%20binary)%20as%20streams%20as%20a%20workaround.%20See%20the%20examples%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2FMicrosoft%2Fmsphpsql%2Fwiki%2FFeatures%23pooling%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehere.%3C%2FA%3E%3C%2FLI%3E%3C%2FUL%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3ESurvey%3C%2FP%3E%3CP%3ELet%20us%20know%20how%20we%20are%20doing%20and%20how%20you%20use%20our%20drivers%20by%20taking%20our%20%3CA%20href%3D%22https%3A%2F%2Faka.ms%2Fmssqlphpsurvey%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Epulse%20survey%3C%2FA%3E.%3C%2FP%3E%3CDIV%20class%3D%22mceNonEditable%20lia-copypaste-placeholder%22%3E%26nbsp%3B%3C%2FDIV%3E%3CP%3EInstall%3C%2FP%3E%3CUL%3E%3CLI%3EOn%20Linux%20and%20macOS%20run%20the%20commands%20below%3A%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-applescript%22%3E%3CCODE%3Esudo%20pecl%20install%20sqlsrv-5.9.0beta2%0Asudo%20pecl%20install%20pdo_sqlsrv-5.9.0beta2%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CUL%3E%3CLI%3ETo%20download%20Windows%20DLLs%20for%20PHP%207.3%20or%20above%20from%20the%20PECL%20repository%2C%20please%20navigate%20to%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fpecl.php.net%2Fpackage%2Fsqlsrv%2F5.9.0beta2%2Fwindows%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3ESQLSRV%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3Eor%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fpecl.php.net%2Fpackage%2Fpdo_sqlsrv%2F5.9.0beta2%2Fwindows%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EPDO_SQLSRV%3C%2FA%3E.%3C%2FLI%3E%3CLI%3EDirect%20downloads%20for%20released%20binaries%20can%20also%20be%20found%20at%20the%20%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Freleases%2Ftag%2Fv5.9.0-beta2%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3EGithub%20release%20tag%3C%2FA%3E.%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EDavid%20Engel%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-1949885%22%20slang%3D%22en-US%22%3E%3CP%3EWe%20recently%20released%20the%20next%20preview%2Fbeta%20of%20the%20Microsoft%20Drivers%20for%20PHP%20for%20SQL%20Server%2C%20version%205.9.0-beta2.%20This%20preview%20release%20has%20been%20built%20with%20PHP%207.3%2B%20and%20tested%20on%20all%20supported%20platforms.%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1949885%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3ESQLServerDrivers%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Co-Authors
Version history
Last update:
‎Jan 29 2021 03:50 PM
Updated by: