Primary ooSQLite Classes

Most of the work to use the SQLite database engine is done through the primary ooSQLite classes documented in this chapter. SQLite also allows extensions to the database engine to be written by the user of the engine. An SQLite extension is typically a shared library or DLL and written in C / C++ code. ooSQLite provides full support for the loading of these extensions with a number of classes. Those classes are documented in their own User Defined Extension Classes .

As a note, support for user defined extensions written in Rexx are also part of ooSQLite. This support is done through the createCollation and createFunction . In the future support for user defined virtual tables is intended to be added to ooSQLite through a createModule method.

The following table lists the primary classes used in the object orientated interface of the ooSQLite package that are documented in this chapter:

Class Description
The ooSQLite Class The ooSQLite class provieds a number of class methods that are generally useful in working with SQLite databases. Many of the methods are used to query or set values in the database engine rather than an individual database.
The ooSQLiteBackup Class An ooSQLiteBackup object provides methods for copying the content of one database into another. It is useful either for creating backups of databases or for copying in-memory databases to or from persistent files.
The ooSQLiteConnection Class Each ooSQLiteConnection object represents an open connection to a SQLite database. Mulitple connections to the same database are allowed by instantiating multiple ooSQLiteConnection objects.
The ooSQLiteMutex Class An ooSQLiteMutex object provides methods for allocating and using a mutex. In general a mutex is a synchronization object used in multi-threading programs to prevent different threads from acessing a shared resource at the same time.
The ooSQLiteStmt Class Each ooSQLiteStmt object represents a single SQL statement, which is often referred to as a prepared statment.