DISQLite3 Pro 5.21.0 D4-XE10.2 » Developer.Team

DISQLite3 Pro 5.21.0 D4-XE10.2

DISQLite3 Pro 5.21.0 D4-XE10.2
DISQLite3 Pro 5.21.0 D4-XE10.2 | 16 Mb


DISQLite3 implements a self-contained, embeddable, zero-configuration SQL database engine for Delphi (Embarcadero / CodeGear / Borland).

Overview
ACID transactions, even after system crashes and power failures.
Zero-configuration – no setup or administration needed.
Implements most of SQL-92.
A complete database is stored in a single disk file.
Supports terabyte-sized databases and gigabyte-sized strings and blobs. Self-contained: no external dependencies, no DLLs.
Small footprint and smart linking: Only required code is compiled in, adding as little as 300 KB code space only.
Full Text Search (FTS) with customizable tokenizer, prefix matching, and optional word stemming for 15 languages.
Database AES encryption with SHA256 key generator.
Db.pas is not required, which allows DISQLite3 to compile with all flavours of Delphi, including Delphi Standard and Delphi Personal.
Faster than popular database engines for most common operations.
Simple, easy to use API.
Database files created with DISQLite3 can also be accessed by Linux and MacOS using the SQLite3 libraries.

SQL-92 Support
DISQLite3 Drive Catalog Demo ApplicationDISQLite3 understands most of the SQL-92 language standard:

ALTER TABLE
ANALYZE
ATTACH DATABASE
BEGIN TRANSACTION
Comments
COMMIT TRANSACTION
CREATE INDEX
CREATE TABLE
CREATE TRIGGER
CREATE VIEW
DELETE
DETACH DATABASE
DROP INDEX
DISQLite3 Mathematical Expression Evaluator Demo Applicationdrop TABLE
DROP TRIGGER
DROP VIEW
END TRANSACTION
EXPLAIN
Expressions
INSERT
ON CONFLICT clause
PRAGMA
REINDEX
REPLACE
ROLLBACK TRANSACTION
SELECT
UPDATE
VACUUM
The complete SQL syntax is described in full length in the DISQLite3 HTML Help, part of the installation package.

Simple Programming Interface
DISQLite3 Database Encryption Demo ApplicationDISQLite3 provides a comprehensive list of functions and procedures to manage database records with ease and efficiency. It includes the full SQLite3 functionality, plus a number of Delphi specific extras:

AnsiString, UnicodeString / WideString, and Variant support.
Database and Statement wrapper classes.
TDataSet support.
TStream support for BLOBs.
Growing number of Delphi example projects.
Despite of its rich set of features, a DISQLite3 database application can be realized with just three different function calls.

DISQLite3 5.21
Update the text of error messages returned by sqlite3_errmsg for some error codes.
Add new pointer passing interfaces.
Backwards-incompatible changes to some extensions in order to take advantage of the improved security offered by the new pointer passing interfaces:
Extending FTS5 в†’ requires sqlite3_bind_pointer to find the fts5_api pointer.
carray(PTR,N) в†’ requires sqlite3_bind_pointer to set the PTR parameter.
remember(V,PTR) в†’ requires sqlite3_bind_pointer to set the PTR parameter.
Added the SQLITE_STMT virtual table extension.
Added the COMPLETION extension – designed to suggest tab-completions for interactive user interfaces. This is a work in progress. Expect further enhancements in future releases.
Added the UNION virtual table extension.
The built-in date and time functions have been enhanced so that they can be used in CHECK constraints, in indexes on expressions, and in the WHERE clauses of partial indexes, provided that they do not use the 'now', 'localtime', or'utc' keywords. Futher information.
Added the sqlite3_prepare_v3 and sqlite3_prepare16_v3 interfaces with the extra “prepFlags” parameters.
Provide the SQLITE_PREPARE_PERSISTENT flag for sqlite3_prepare_v3 and use it to limit lookaside memory misuse by FTS3, FTS5, and the R-Tree extension.
Added the PRAGMA secure_delete=FAST command. When secure_delete is set to FAST, old content is overwritten with zeros as long as that does not increase the amount of I/O. Deleted content might still persist on the free-page list but will be purged from all b-tree pages.
Query planner enhancements:
When generating individual loops for each ORed term of an OR scan, move any constant WHERE expressions outside of the loop, as is done for top-level loops.
The query planner examines the values of bound parameters to help determine if a partial index is usable.
When deciding between two plans with the same estimated cost, bias the selection toward the one that does not use the sorter.
Evaluate WHERE clause constraints involving correlated subqueries last, in the hope that they never have be evaluated at all.
Do not use the flattening optimization for a sub-query on the RHS of a LEFT JOIN if that subquery reads data from a virtual table as doing so prevents the query planner from creating automatic indexes on the results of the sub-query, which can slow down the query.
Add SQLITE_STMTSTATUS_REPREPARE, SQLITE_STMTSTATUS_RUN, and SQLITE_STMTSTATUS_MEMUSED options for the sqlite3_stmt_status interface.
Provide PRAGMA functions for PRAGMA integrity_check, PRAGMA quick_check, and PRAGMA foreign_key_check.
The SQLITE_DBCONFIG_ENABLE_QPSG run-time option enables the query planner stability guarantee.
Miscellaneous optimizations result in a 2% reduction in CPU cycles used.


Only for V.I.P
Warning! You are not allowed to view this text.