DISQLite3 Pro v5.22.0 for D4-XE10.2 + Crack
DISQLite3 implements a self-contained, embeddable, zero-configuration SQL database engine for Delphi (Embarcadero / CodeGear / Borland).
- 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.pasis 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.
DISQLite3 understands most of the SQL-92 language standard:
- ALTER TABLE
- ATTACH DATABASE
- BEGIN TRANSACTION
- COMMIT TRANSACTION
- CREATE INDEX
- CREATE TABLE
- CREATE TRIGGER
- CREATE VIEW
- DETACH DATABASE
- DROP INDEX
- DROP TABLE
- DROP TRIGGER
- DROP VIEW
- END TRANSACTION
- ON CONFLICT clause
- ROLLBACK TRANSACTION
The complete SQL syntax is described in full length in the DISQLite3 HTML Help, part of the installation package.
Simple Programming Interface
DISQLite3 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.
Pro and Personal Editions
DISQLite3 comes in two editions: DISQLite3 Personal and DISQLite3 Pro.
DISQLite3 Personal is free for personal, educational, and non-commercial use. It omits some functionality of DISQLite3 Pro, but does not compromize on essential features like ACID transactions, virtually unlimited database size, full text search, and others.
DISQLite3 Pro is required for commercial use and may be purchased online. It adds functionality usually desired by advanced users. This includes SQL triggers and views, arbitrary encryption passwords, user-defined SQL functions, and more. Since DISQLite3 Pro is fully compatible to the Personal edition, it is possible to upgrade existing projects without any code changes.
The feature chart is available for a side-by-side comparison of the two editions.
DISQLite3 5.22 – Nov 16 2017
- Allow ATTACH and DETACH commands to work inside of a transaction.
- Allow WITHOUT ROWID virtual tables to be writable if the PRIMARY KEY contains exactly one column.
- Improved de-quoting of column names for CREATE TABLE AS statements with an aggregate query on the right-hand side.
- Enhanced the LIKE optimization so that it works with an ESCAPE clause.
- Enhanced PRAGMA integrity_check and PRAGMA quick_check to detect obscure row corruption that they were formerly missing. Also update both pragmas so that they return error text rather than SQLITE_CORRUPT when encountering corruption in records.
- The query planner now prefers to implement FROM-clause subqueries using co-routines rather using the query flattener optimization. Support for the use of co-routines for subqueries may no longer be disabled.
- Pass information about !=, IS, IS NOT, NOT NULL, and IS NULL constraints into the xBestIndex method of virtual tables.
- Enhanced the CSV virtual table so that it accepts the last row of input if the final new-line character is missing.
- Remove the rarely-used “scratch” memory allocator. Replace it with the SQLITE_CONFIG_SMALL_MALLOC configuration setting that gives SQLite a hint that large memory allocations should be avoided when possible.
- Added the swarm virtual table to the existing union virtual table extension.
- Added the sqlite_dbpage virtual table for providing direct access to pages of the database file.
- Add a new type of fts5vocab virtual table – “instance” – that provides direct access to an FTS5 full-text index at the lowest possible level.
- Miscellaneous microoptimizations reduce CPU usage by about 2.1%.
- Fix an obscure memory leak in sqlite3_result_pointer.
- Avoid a possible use-after-free error by deferring schema resets until after the query planner has finished running.
- Only use indexes-on-expressions to optimize ORDER BY or GROUP BY if the COLLATE is correct.
- Fix an assertion fault that was coming up when the expression in an index-on-expressions is really a constant.
- Fix an assertion fault that could occur following PRAGMA reverse_unordered_selects.
- Fix a segfault that can occur for queries that use table-valued functions in an IN or EXISTS subquery.
- Fix a potential integer overflow problem when compiling a particular horrendous common table expression.
- Fix a potential out-of-bound read when querying a corrupt database file.