Published is the release of SQLite 3.44, a lightweight DBMS designed as a dynamic library. The SQLite code is released into the public domain, which means it can be used freely and without restrictions for any purpose. Financial support for SQLite developers is provided by a specially formed consortium that includes companies like Bentley, Bloomberg, Expensify, and Navigation Data Standard.
Hlavné zmeny:
- In aggregate functions, specifying the expression "ORDER BY" after the last parameter is allowed for processing function arguments in the specified order, which can be useful for functions like string_agg() and json_group_array().
- Support has been added for the scalar SQL functions concat() and concat_ws(), compatible with PostgreSQL, MS SQL Server, and MySQL.
- Support has been added for the aggregate function string_agg(), compatible with PostgreSQL and MS SQL Server.
- The SQL function strftime() has added support for the specifiers "%e", "%F", "%I", "%k", "%l", "%p", "%P", "%R", "%T", and "%u".
- Many errors related to the statement "CREATE TABLE" are now reported after executing the statement, rather than after the first use of the table.
- The command "PRAGMA integrity_check" now implements a consistency check of various built-in virtual tables used in the FTS3, FTS4, FTS5, RTREE, and GEOPOLY extensions.
- Built-in virtual tables used in the FTS3, FTS4, FTS5, RTREE, and GEOPOLY extensions are allowed to be used within triggers.
- By specifying the SQLITE_DBCONFIG_DEFENSIVE setting, protection against enabling the "PRAGMA writable_schema" mode is ensured.
- When compiled with Microsoft C, the SQLITE_USE_SEH (Structured Exception Handling) setting is enabled by default.
- Optimizations have been made in the query planner related to partial index scans when a constant value is specified for a table column in the WHERE clause. Due to identified regressions, the view scan optimization added in version 3.42.0 has been disabled.
- A runtime check for support of the "long double" type with greater precision than the "double" type has been provided.
- In the command line interface for Windows, UTF-8 encoding is used by default for input and output (an option "—no-utf8" is provided to disable this).
Zdroj: opennet.ru
