Expand description
§fraiseql-db
Database abstraction layer for FraiseQL v2.
This crate provides database-agnostic access to multiple database backends:
- PostgreSQL (primary, full feature set)
- MySQL (secondary support)
- SQLite (local dev, testing)
- SQL Server (enterprise)
It also provides the shared DB-level types used by the compilation and execution layers: collation configuration, SQL hint types, and extended filter operators.
Re-exports§
pub use collation::CollationCapabilities;pub use collation::CollationMapper;pub use collation_config::CollationConfig;pub use collation_config::DatabaseCollationOverrides;pub use collation_config::InvalidLocaleStrategy;pub use collation_config::MySqlCollationConfig;pub use collation_config::PostgresCollationConfig;pub use collation_config::SqlServerCollationConfig;pub use collation_config::SqliteCollationConfig;pub use dialect::DialectCapabilityGuard;pub use dialect::Feature;pub use dialect::MySqlDialect;pub use dialect::PostgresDialect;pub use dialect::SqlDialect;pub use dialect::SqlServerDialect;pub use dialect::SqliteDialect;pub use dialect::UnsupportedOperator;pub use identifier::quote_mysql_identifier;pub use identifier::quote_postgres_identifier;pub use identifier::quote_sqlite_identifier;pub use identifier::quote_sqlserver_identifier;pub use introspector::DatabaseIntrospector;pub use introspector::RelationInfo;pub use introspector::RelationKind;pub use postgres::PostgresAdapter;pub use postgres::PostgresIntrospector;pub use projection_generator::MySqlProjectionGenerator;pub use projection_generator::PostgresProjectionGenerator;pub use projection_generator::ProjectionField;pub use projection_generator::SqliteProjectionGenerator;pub use traits::ArcDatabaseAdapter;pub use traits::BoxDatabaseAdapter;pub use traits::CursorValue;pub use traits::DatabaseAdapter;pub use traits::DatabaseCapabilities;pub use traits::DirectMutationContext;pub use traits::DirectMutationOp;pub use traits::MutationStrategy;pub use traits::RelayDatabaseAdapter;pub use traits::RelayPageResult;pub use traits::SupportsMutations;pub use types::DatabaseType;pub use types::JsonbValue;pub use types::PoolMetrics;pub use types::sql_hints::OrderByClause;pub use types::sql_hints::OrderDirection;pub use types::sql_hints::SqlProjectionHint;pub use where_clause::HavingClause;pub use where_clause::WhereClause;pub use where_clause::WhereOperator;pub use where_generator::GenericWhereGenerator;
Modules§
- collation
- Database-specific collation mapping.
- collation_
config - Collation configuration for user-aware sorting.
- dialect
- SQL dialect abstractions for WHERE clause generation.
- filters
- Rich type filter operators and handlers.
- identifier
- Database identifier quoting utilities.
- introspector
- Database introspection trait for querying table metadata.
- path_
escape - Escape utilities for JSON path SQL injection prevention.
- postgres
- PostgreSQL database adapter.
- projection_
generator - SQL Projection Query Generator
- traits
- Database adapter trait definitions.
- types
- Type definitions for fraiseql-db.
- where_
clause - WHERE clause abstract syntax tree.
- where_
generator - Generic WHERE clause generator.
- where_
sql_ generator - WHERE clause to SQL string generator for fraiseql-wire.
Type Aliases§
- Result
- A type alias for
Result<T, fraiseql_error::FraiseQLError>, used throughout this crate.