ADO.NET Provider for JSON

Build 24.0.9060

Changelog

General Changes

DateBuild
Number
Change
Type
Description
10/15/20249054JSONReplaced
  • In the ListFiles stored procedure, replaced the AbsolutePath input with the Path input. This path is relative to the path provided in the URI connection property.
09/30/20249039JSONAdded
  • Added the AbsolutePath input to the ListFiles stored procedure. By default, ListFiles lists all JSON files in the directory specified by the URI connection property. If an alternative directory is supplied in the AbsolutePath input, this procedure will instead list all JSON files in the supplied directory.
08/23/20249001JSONAdded
  • Added OAuthPKCE as an authentication option when ConnectionType is set to Google Cloud Storage and Google Drive.
  • Added OAuthClient as an authentication option when ConnectionType is set to Box.
08/20/20248998JSONAdded
  • Added support for the following AWS regions: HYDERABAD, MELBOURNE, CALGARY, SPAIN, ISOLATEDUSEAST, ISOLATEDUSEASTB, and ISOLATEDUSWEST.
06/28/20248945JSONRemoved
  • Removed the value "Auto" from the ConnectionType connection property. The default value is now "Local".

Added
  • Added the "Custom Stream" value to the ConnectionType connection property.
06/18/20248935GeneralAdded
  • Added support for the "TELAVIV" region (Israel) in the AWSRegion connection property.
05/09/20248895GeneralChanged
  • The ROUND function previously did not accept negative precision values. That feature has now been restored.
03/15/20248840GeneralAdded
  • Created a new SQL function called STRING_COMPARE that provides java's String.compare() ability to SQL queries. Returns a number representative of the compared value of two strings
01/18/20248783ADO.NETAdded
  • Added support for EFCore 8.
11/29/20238733GeneralChanged
  • The ROUND function doesn't accept the negative precision values anymore.

Changed
  • The returning types of the FDMonth, FDQuarter, FDWeek, LDMonth, LDQuarter, LDWeek functions are changed from Timestamp to Date.
  • The return type of the ABS function will be consistent with the parameter value type.
11/28/20238732GeneralAdded
  • Added the HMACSHA256 formatter to allow for secrets to be decoded if it is in base64 format
11/15/20238719ADO.NETChanged
  • NuGet license and icon are now embedded within the package itself, in compliance with the package authoring best practices.
10/31/20238704JSONChanged
  • Improve handling of invalid JSON files when exposing metadata for directory URIs.
06/20/20238571GeneralAdded
  • Added the new sys_lastresultinfo system table.
04/25/20238515GeneralRemoved
  • Removed support for the SELECT INTO CSV statement. The core code doesn't support it anymore.
04/19/20238509ADO.NETRemoved
  • Removed support for EFCore 3.1.
04/18/20238508ADO.NETRemoved
  • Removed support for SSRS 2012.

Added
  • Added support for SSRS 2022.
04/14/20238504JSONAdded
  • Added support for the ListFiles stored procedure.
12/14/20228383GeneralChanged
  • Added the Default column to the sys_procedureparameters table.
12/08/20228377JSONAdded
  • Added the WriteToFile parameter for CreateSchema. This defaults to true and must be disabled to write the schema to FileStream or FileData.

Removed
  • Removed the FileLocation parameter from CreateSchema. The Location property must be used to set the output directory for created schemas.
10/31/20228339JSONAdded
  • Added support the RefreshOAuth operation which can be used to refresh authentication on long-running queries. It is intended for use where a single script triggers multiple network requests to APIs that use OAuth. It may be invoked with
    <api:call op="utiladoRefreshOAuth" />
    .
09/30/20228308GeneralChanged
  • Added the IsPath column to the sys_procedureparameters table.
08/30/20228277JSONAdded
  • Added support for uploading server-side encrypted objects for Amazon S3 storage source via ServerSideEncryption connection property.
06/08/20228194ADO.NETRemoved
  • Removed support for VS2010.
05/27/20228182JSONAdded
  • Added ConnectionType connection property to determine the storage type of specified URI.
05/19/20228174ADO.NETRemoved
  • Removed support for .NET 2.0.
04/27/20228152ADO.NETRemoved
  • Removed support for EFCore 3.0 and EFCore5.0.
03/15/20228109JSONAdded
  • Added support for using JWT with generic http:// sources. Previously it was only available for specific types of sources like gdrive://. Custom JWT is currently only supported for authorization grants, not client credentials.
03/10/20228104JSONAdded
  • Added support for Apache HDFS (webhdfs://) as a storage source.
03/09/20228103JSONChanged
  • Changed the default method for submitting client_credentials grants with OAuth. Before, client_credentials would submit OAuthClientId and OAuthClientSecret using the HTTP Authorization header. Now the OAuthPasswordGrantType controls this setting and it defaults to OAuthPasswordGrantType=Post. The previous behavior is still available by setting OAuthPasswordGrantType=Basic.
01/13/20228048JSONAdded
  • Added support for IBM Cloud Object Storage(ibmobjectstorage://) as a storage source.
01/07/20228042JSONAdded
  • Added support the sleep operation which can be used to add delays to table operations. This is intended for use with async APIs built around polling. It may be invoked with
    <api:call op="utiladoSleep?timeout=x" />
    where x is the delay in seconds.
10/07/20217950JSONAdded
  • Added support for excluding files based on the ExcludeFiles connection property.
  • Added support for datetime filters in IncludeFiles and ExcludeFiles connection properties. We currently support CreatedDate and ModifiedDate. Ex:
    ExcludeFiles="TXT,CreatedDate<='2020-11-26T07:39:34-05:00'" 
    ExcludeFiles="TXT,ModifiedDate<=DATETIMEFROMPARTS(2020, 11, 26, 7, 40, 50, 000)"
    ExcludeFiles="ModifiedDate>=DATETIMEFROMPARTS(2020, 11, 26, 7, 40, 49, 000),ModifiedDate<=CURRENT_TIMESTAMP()" 
  • Only the following storage sources will have support for filtering by CreatedDate:
    • Box (box://)
    • GCloudStorage (gs://)
    • GoogleDriveStorageSource (gdrive://)
    • OneDrive (onedrive://)
    • SharePoint (sp://)
    • SharePointREST (sprest://)
09/02/20217915GeneralAdded
  • Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
08/07/20217889GeneralChanged
  • Added the KeySeq column to the sys_foreignkeys table.
08/06/20217888GeneralChanged
  • Added the new sys_primarykeys system table.
07/23/20217874GeneralChanged
  • 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 as opposed to the predicate. For example: 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. For example: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that were previously calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
06/24/20217845JSONAdded
  • Added support for the GOOGLEJSONBLOB JWT certificate type. This works like the existing GOOGLEJSON certificate type except that the certificate is provided as JSON text instead of as a file path.
06/08/20217829JSONAdded
  • Added support for the AzureServicePrinciple authentication scheme, which will support both using an OAuthClientSecret, or alternatively using a JWT cert.
06/07/20217828ADO.NETAdded
  • Added support for the DbCommand.CommandTimeout property.
06/05/20217826JSONAdded
  • Added support to authenticate submitting JWT certs instead of the OAuthClientSecret for the AzureAD authentication scheme.
05/29/20217819ADO.NETRemoved
  • Removed support for SSRS 2008.
04/25/20217785GeneralAdded
  • Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = CONCAT(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
04/23/20217783GeneralChanged
  • Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
04/23/20217783JSONDeprecated
  • SSODomain will not be used anymore for OKTA, OneLogin and ADFS. Instead, Domain should be specified.
  • The AzureAccount connection property is deprecated. Instead, AzureStorageAccount should be used.
04/16/20217776ADO.NETChanged
  • Separated the ADO.NET Provider assembly and Entity Framework Core 5 Nuget packages.
  • Single precision floating point numbers are now reported as with the Data Type Name as "real". Double precision floating point numbers now have their Data Type Name reported as "float". This change does not impact the actual data types of these columns - only the reported data type name.
  • Separate EFCore 3.0, 3.1 and EFCore 5 dlls are now shipped with the driver. The 2.0 and 2.1 EFCore dlls are removed.
04/16/20217776GeneralAdded
  • Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
04/16/20217776GeneralChanged
  • Reduced the length to 255 for varchar primary key and foreign key columns.

Changed
  • Updated index naming convention to avoid duplicates.
04/16/20217776GeneralChanged
  • Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you need to generate new metadata caches if you are currently using CacheMetadata.
04/15/20217775GeneralChanged
  • Kerberos authentication is updated to use TCP by default, but will fall back to UDP if a TCP connection cannot be established.
03/26/20217755JSONChanged
  • Updated the way default table names are computed so that the file name is taken into account. The driver will now try to use the file name for the table name instead of using the term "JSONData" every time.
  • The provider will now consistently use the following values when naming the table that uses the root JSONPath. In order:
    • The value of the roottablename input attribute, if given.
    • The value of the TableName connection property, if given.
    • The filename of either the MetadataDiscoveryURI, or the first URI if that is not provided. The filename does not include the extension. If there is no URI, or the filename is empty (e.g. "/home/user/.json"), or the URI is for HTTP/HTTPS then the URI is ignored.
    • The value "JSONData".
  • This naming process applies even in JSONRows mode, where before the name of the table was always "JSONData" with no way for the user to override it.
  • Vertically flattened tables now use the table name instead of always using the prefix "json".
  • None of the above changes apply when the connection is made in backwards compatibility mode.
12/21/20207660JSONAdded
  • Added support for reporting special types for aggregates. If the user opts in via SupportNativeDataType and are using JDBC, then the driver will report JSONArray as the type name for array aggregates and JSONObject for object aggregates (if FlattenObjects is disabled)

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 24.0.9060