Ridge Integrado API
Utilice el paquete ridge Grove cuando un proceso seed deba ser propietario de la base de datos. El identificador de la base de datos es un recurso de solo movimiento con limpieza determinista.
Aplicación mínima
use "ridge"
fn main() -> result<i64, ridge_error> {
let mut db = ridge_open("./data/app", 4096 as usize)?
db.create_table("items", 4096 as usize)?
let payload = bytes.from("hello").or_abort()
db.insert("items", 1, payload.view())?
let found = db.get("items", 1)?
match found {
some(row) => print(f"row={row.id}")
none => print("not found")
}
result.ok(0)
}
Ejecute las comprobaciones actuales del compilador seed antes de copiar un ejemplo en una aplicación:
./seed/seed check path/to/application
./seed/seed test path/to/application
Operaciones centrales
ridge_open / ridge_open_with_cache
db.create_table / db.insert / db.get / db.update / db.delete
db.count / db.scan / db.find_equal / db.create_unique_index
db.begin / db.try_begin / db.transaction_put / db.transaction_delete
db.commit / db.rollback
db.integrity / db.backup / ridge_validate_backup / ridge_restore
db.commit_stats / db.stats
La fila heredada directa API almacena una clave principal i64 y una carga útil segura para binarios. Los paquetes relacional y SQL proporcionan filas de varias columnas escritas de generación 2. Elija una ruta de datos coherente para una aplicación en lugar de mezclar supuestos de visibilidad heredados y relacionales.
Propiedad y errores
- Trate la base de datos y los identificadores de transacciones como recursos propios.
- Propague
ridge_errorcon?o manéjelo explícitamente. - Mantenga las vistas de filas y búfer prestadas dentro de su alcance léxico válido.
- Nunca duplique ni edite archivos de almacenamiento Ridge mientras la base de datos esté abierta.
- Utilice las API de copia de seguridad y restauración Ridge para obtener copias coherentes.
Utilice el seed-lang habilidad junto con ridgedb cuando un agente de IA escribe o reseña .sd código.
Observabilidad
db.commit_stats() devuelve contadores por confirmación WAL, página, caché, split/merge, reutilización, I/O, sincronización, asignación y preparación. db.stats() devuelve estadísticas acumulativas de caché y búfer propiedad del motor desde su apertura. Interpretelos como diagnósticos locales, no como telemetría de flota.