miniorm ~master

A minimalistic ORM for SQLite


To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:

Mini ORM for SQLite3

Build Status

This is a simple ORM layer for d2sqlite3.

The architecture separate the database from the SQL tree construction. This is to make it possible to use as an ORM layer for other type of databases in the future.

Example

Very simple ORM with single backend (SQLite3).

    auto db = Miniorm("test.db");
    db.run(schema);

    db.run(delete_!Foo.where("ts <", Clock.currTime));

    db.run(insert!Foo, Foo(0, "hello", Clock.currTime), Foo(20, "world", Clock.currTime));
    db.run(insert!Foo, Foo(0, "hello", Clock.currTime), Foo(0, "world", Clock.currTime));

    import std.random : uniform;

    db.run(insert!Bar, Bar(0, uniform(0, 10), Baz("one", 3.14)));

    db.run(insertOrReplace!Foo, Foo(1, "hello", Clock.currTime), Foo(3, "world", Clock.currTime));

See example/source/app.d

Credit

Oleg Butko (deviator) for writing and publishing MicroORM which MiniORM is based on. Without MicroORM this library would not have seen the light of day.

Authors:
  • Joakim Brännström
Dependencies:
d2sqlite3, unit-threaded
Versions:
0.0.10 2024-Feb-22
0.0.9 2023-Oct-18
0.0.7 2023-Feb-12
0.0.6 2022-May-30
0.0.5 2021-Sep-07
Show all 11 versions
Download Stats:
  • 0 downloads today

  • 0 downloads this week

  • 2 downloads this month

  • 278 downloads total

Score:
1.1
Short URL:
miniorm.dub.pm