Expand description
§WAE Database - 数据库服务抽象层
提供统一的数据库操作抽象,基于 Turso (Limbo) 后端实现。 Turso 是一个用 Rust 重写的 SQLite 兼容数据库,支持异步 I/O。
§ORM 功能
Entitytrait: 定义数据库实体FromRow/ToRowtrait: 行映射QueryBuilder: 查询构建器Repository: CRUD 操作
§Schema 功能
TableSchema: 表结构定义ColumnDef: 列定义IndexDef: 索引定义
§值类型统一
本模块统一使用 wae_types::Value 作为值类型,
内部自动转换为数据库原生类型。
数据库模块 - 提供统一的数据库抽象层。
§主要功能
- 多数据库支持: 支持 PostgreSQL、MySQL、SQLite
- 连接池: 内置连接池管理
- 事务支持: 支持数据库事务
- 迁移工具: 集成数据库迁移
§技术栈
- ORM: SeaORM
- 连接池: sea-orm
- 异步运行时: Tokio
§使用示例
use wae_database::Value;
fn main() {
let value = Value::String("hello".to_string());
println!("{:?}", value);
}§支持的数据库
| 数据库 | 驱动 |
|---|---|
| PostgreSQL | sqlx-postgres |
| MySQL | sqlx-mysql |
| SQLite | sqlx-sqlite |
Modules§
- col
- 列类型快捷构造函数
Macros§
- entity_
fields - 实体字段定义宏辅助
- impl_
from_ row - 自动实现 FromRow 的宏
- impl_
to_ row - 自动实现 ToRow 的宏
Structs§
- Column
Def - 列定义
- Database
Service - Turso 数据库服务
- DbRepository
- 基于数据库连接的仓储实现
- Delete
Builder - DELETE 查询构建器
- Foreign
KeyDef - 外键定义
- Index
Def - 索引定义
- Insert
Builder - INSERT 查询构建器
- Join
- JOIN 定义
- Query
Builder - 查询构建器入口
- Select
Builder - SELECT 查询构建器
- Table
Schema - 表结构定义
- Turso
Connection - Turso 连接包装
- Update
Builder - UPDATE 查询构建器
Enums§
- Column
Type - 列类型
- Condition
- 查询条件
- Database
Backend - 数据库后端类型
- Database
Config - 数据库配置枚举
- Database
Row - 查询结果行
- Database
Rows - 查询结果集迭代器
- Database
Statement - 预处理语句
- Join
Type - JOIN 类型
- Referential
Action - 外键引用行为
- Value
- 动态值类型
Traits§
- Belongs
To - 一对多关系的反向 trait
- Database
Connection - 数据库连接抽象
- Entity
- 数据库实体 trait
- From
Database Value - 从数据库值转换的 trait
- FromRow
- 从数据库行解析实体
- HasMany
- 一对多关系 trait
- Many
ToMany - 多对多关系 trait
- Repository
- 仓储 trait - 提供 CRUD 操作
- ToRow
- 将实体转换为数据库行
Type Aliases§
- Database
Error - 数据库错误类型
- Database
Result - 数据库操作结果类型