Development Documentation (main branch) - For stable release docs, see docs.rs/eidetica

Module sql

Module sql 

Source
Expand description

SQL-based backend implementations for Eidetica storage.

This module provides SQL database backends that implement the BackendImpl trait, allowing Eidetica entries to be stored in relational databases.

§Available Backends

  • SQLite (feature: sqlite): Embedded database
  • PostgreSQL (feature: postgres): PostgreSQL database

§Architecture

The SQL backend uses sqlx with AnyPool for multi-database support. All methods are async to match the async BackendImpl trait.

§Schema and Migrations

The database schema is defined in the schema module and automatically initialized when connecting. Migrations are handled via code-based functions rather than SQL files to support dialect differences between SQLite and PostgreSQL.

See schema module documentation for details on adding migrations.

Modules§

schema
Schema definition and migration system. SQL schema definitions and migrations.

Structs§

Postgres
Namespace for PostgreSQL database constructors.
Sqlite
Namespace for SQLite database constructors.
SqlxBackend
SQL-based backend implementing BackendImpl using sqlx.

Enums§

DbKind
Database backend kind for SQL dialect selection.