Expand description
§TegDB - A high-performance, embedded database engine
TegDB provides a high-level SQLite-like database interface for easy database operations.
§Database API
The Database
struct provides a SQLite-like interface for easy database operations:
use tegdb::{Database, Result};
// Open or create a database
let mut db = Database::open("my_database.db")?;
// Create table
db.execute("CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)")?;
// Insert data
db.execute("INSERT INTO users (id, name, age) VALUES (1, 'Alice', 30)")?;
// Query data
let result = db.query("SELECT * FROM users")?.into_query_result()?;
for row in result.rows() {
println!("User row: {:?}", row);
}
// Use transactions
let mut tx = db.begin_transaction()?;
tx.execute("UPDATE users SET age = 31 WHERE id = 1")?;
tx.commit()?;
§Low-level API (Advanced Users)
For advanced use cases, benchmarks, or examples, you can enable the dev
feature
to access the low-level engine API:
[dependencies]
tegdb = { version = "0.2", features = ["dev"] }
This exposes additional types like Engine
, EngineConfig
, Executor
, etc.
for direct engine manipulation.
Re-exports§
pub use database::Database;
pub use database::DatabaseTransaction;
pub use database::QueryResult;
pub use error::Error;
pub use error::Result;
pub use engine::Engine;
pub use engine::EngineConfig;
pub use engine::Transaction;
pub use executor::ColumnInfo;
pub use executor::Executor;
pub use executor::ResultSet;
pub use executor::TableSchema;
pub use parser::parse_sql;
pub use parser::Assignment;
pub use parser::ColumnConstraint;
pub use parser::ColumnDefinition;
pub use parser::ComparisonOperator;
pub use parser::Condition;
pub use parser::CreateTableStatement;
pub use parser::DataType;
pub use parser::DeleteStatement;
pub use parser::DropTableStatement;
pub use parser::InsertStatement;
pub use parser::OrderByClause;
pub use parser::OrderDirection;
pub use parser::SelectStatement;
pub use parser::Statement;
pub use parser::UpdateStatement;
pub use parser::WhereClause;
pub use planner::ColumnStatistics;
pub use planner::Cost;
pub use planner::ExecutionPlan;
pub use planner::PlannerConfig;
pub use planner::QueryPlanner;
pub use planner::TableStatistics;
pub use storage_format::StorageFormat;
pub use parser::SqlValue;
Modules§
- database
- High-level database interface
- engine
- error
- executor
- Modern executor for TegDB with native row format support
- low_
level - native_
row_ format - parser
- SQL parser implementation using nom
- planner
- Query planner and optimizer for TegDB
- storage_
format