ElevateDB 2.27 is now available for download. If you're an existing customer, then you should be receiving an email shortly with download instructions.
The complete list of breaking changes and new features is below.
2.27 Breaking ChangesThe following are breaking changes in 2.27:
The XML output from the EXPORT TABLE SQL statement now includes a top-level "table" element in order to properly adhere to the XML specifications and allow exported XML files to be properly validated.
The IMPORT TABLE SQL statement can still import XML files formatted with or without the top-level "table" element.
Comparisons between timestamp values and date values now ignore the time portion of the timestamp value and only compare the date portion of the timestamp value with the date value. This means that you can now execute queries like the following:
SELECT * FROM MyTable WHERE TimeStampColumn = DATE '2017-10-17'
and the query will return all rows where the TimeStampColumn column contains a timestamp value whose date portion matches the specified date constant value.
default expressions for DECLARE SQL/PSM statements were previously not being type-checked properly, so you may see new type errors during compilation of routines that do not specify correct default expressions for a given variable type.
2.27 New FeaturesThe following are the new features in 2.27:
New VCL TEDBDataSetImport and Export methods have been added to allow for the import/export of files to/from TEDBTable, TEDBQuery, TEDBScript, and TEDBStoredProc components.
A new LOG EVENT SQL/PSM statement has been added in order to allow SQL/PSM routines (scripts, procedures/functions, triggers, and jobs) to log information, warning, and error events directly to the logged events for the current ElevateDB configuration.
There are new VCL TEDBEngineAddDayTimeToDateTime, AddDayTimeToTime, AddYearMonthToDate, AddYearMonthToDateTime, SubtractDateFromDateAsDayTime, SubtractDateFromDateAsYearMonth, SubtractDateTimeFromDateTimeAsDayTime, SubtractDayTimeFromDateTime, SubtractDayTimeFromTime, SubtractTimeFromTimeAsDayTime, SubtractYearMonthFromDate, and SubtractYearMonthFromDateTime methods that allow for basic interval math directly from native code, in addition to SQL.
As noted above in the breaking changes section, you can now directly compare the date portion of timestamp values with date values.
ElevateDB now logs warning events to the logged events for the current ElevateDB configuration when a database is opened and the database path does not exist, or if the database catalog does not exist.