- 2021-09-02Added
- Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
 - 2021-08-07Changed
- Add the KeySeq column to the sys_foreignkeys table.
 - 2021-08-06Changed
- Add the new sys_primarykeys system table.
 - 2021-07-23Changed
- Updated the Literal Function Names for relative date/datetime functions. Previously relative date/datetime functions resolved to a different value when used in the projection vs te predicate. Ie: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly the two LAST_MONTH() methods would resolve to different datetimes. Now they will match.
- As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. Ie: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that previously were calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
 - 2021-07-08Added
- Added the TCP Logging Module for the logging information happening on the TCP wire protocol. The transport bytes that are incoming and ongoing will be logged at verbosity=5.
 - 2021-04-23Added
- Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = Concat(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
 - 2021-04-23Changed
- Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
 - 2021-04-16Added
- Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
- Reduced the length to 255 for varchar primary key and foreign key columns.
- Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you would need to generate new metadata caches if you are currently using CacheMetadata.
- Updated index naming convention to avoid duplicates
- Updated and standardized Getting Started connection help.
- Added the Advanced Features section to the help of all drivers.
- Categorized connection property listings in the help for all editions.
 - 2021-08-19Added
- Added the DownloadDocument stored procedure to download the file or image resource object.
- Added the Stored Procedure for Create Page.
 - 2021-06-05Added
- Added support for the AzureServicePrinciple authentication scheme.
- Added support to authenticate submitting JWT certs instead of the OAuthClientSecret for the AzureServicePrinciple and AzureAD authentication schemes.
 - 2021-04-01Changed
- The default scope for the embedded driver to avoid requiring admin consent. Admin consent is required for the Groups table since all Groups permissions require admin consent. It is recommended to use a custom OAuth app if access to the Groups table is required. If using the embedded driver, the GetAdminConsentURL stored procedure must be executed first. Then the requested scope must also be updated using either the input parameter for GetOAuthAccessToken / GetOAuthAuthorizationUrl, or via the connection property.
- The Tenant connection property is deprecated and replaced with AzureTenant to match our other products.