FireDAC Components for Couchbase

Build 21.0.7930

Changelog

General Changes

[7915] - 2021-09-02

Added
  • Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.

[7889] - 2021-08-07

Changed
  • Add the KeySeq column to the sys_foreignkeys table.

[7888] - 2021-08-06

Changed
  • Add the new sys_primarykeys system table.

[7874] - 2021-07-23

Changed
  • 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.

[7859] - 2021-07-08

Added
  • 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.

[7785] - 2021-04-23

Added
  • Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = Concat(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'

[7783] - 2021-04-23

Changed
  • Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.

[7776] - 2021-04-16

Added
  • Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
Changed
  • 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.

FireDac Components Changes

[7829] - 2021-06-08

Removed
  • Remove support for .NET Framework 3.5.

Couchbase Changes

[7865] - 2021-07-14

Added
  • Added support for performing DML on nested child tables in NewChildJoinsMode, which completes our new relational model. You can now INSERT, UPDATE, and DELETE on every table exposed by the provider when NCJM is enabled.
  • Added support for creating collections via DDL. When the hidden UseCollectionsForDDL property is enabled, CREATE TABLE "abucket.ascope.acollection"(...) will create the bucket, scope and collection which correspond to the table's name.

[7802] - 2021-05-12

Added
  • Added support for creating collections via DDL. When the hidden UseCollectionsForDDL property is enabled, CREATE TABLE "abucket.ascope.acollection"(...) will create the bucket, scope and collection which correspond to the table's name.

[7772] - 2021-04-12

Added
  • Added support for the USE KEYS query construct. When executing an N1QL query, the driver will attempt to determine if it contains any eligible filters on Document.Id - if there are any they are removed from the WHERE clause and migrated to the USE KEYS clause. When this transformation is applied the resulting query can avoid index scans, which allows for more queries to be run without a primary index and improves execution speed.

[7741] - 2021-03-12

Changed
  • Updated AddDocuments and ManageIndices so the interface no longer operates based on column#1 values. AddDocuments now accepts either a single ID and Document or a SourceTable that refers to a #TEMP table (analogus to a normal bulk insert), while ManageIndices accepts JSON arrays for multiple values since these are mostly typed by hand and have very few elements.

[7689] - 2021-01-19

Added
  • Added support for collections and scopes within Couchbase v7. This touches on a lot of the driver but here are the main aspects:
    • Tables are now generated for collections as well as buckets/datasets in both N1Ql and Analytics. They have dotted names similar to Analytics datasets. The only exceptions are N1QL default collections which just use the bucket name (the server calls them _default) and Analytics legacy dataverses (which have the same two-level hierarchy)
    • Queries can now use data from collections in all the usual ways (flavors, UNNEST, etc), and collection tables can now be used with DROP TABLE. Buckets still work with DROP TABLE as well but only in limited contexts to prevent users from deleting data outside the default collection.
    • Added new stored procedures for creating and dropping scopes/collections, and updated index management stored predures to report information about scopes/collections.
    • The Dataverse option now expects to follow SQL quoting rules, and can be either a single SQL identifier (foo) for legacy dataverses, or a two-level qualified identifier (foo.bar) for Analytics dataverses/scopes

Copyright (c) 2021 CData Software, Inc. - All rights reserved.
Build 21.0.7930