本文へ移動
mie リファレンス
REPL Playground

std:db/sqlite リファレンス

@import 'std:db/sqlite' で取得する SQLite ドライバモジュール。open で Db ハンドルを得て query / exec / transaction を行う (契約は std:db)。

open

open(path)
open: { String | Future(Result(Db)) }

DB ファイルを開き (不在なら作成) Db ハンドルを得る。':memory:' も可。

>>> db := sqlite.open(":memory:")!
>>> db.close()!

Db メソッド

close

db.close()
close: { Future(Result(Unit)) }

接続を閉じて封印する。以降のメソッド呼び出しは object.Error。

>>> db := sqlite.open(":memory:")!
>>> db.close()!

transaction

db.transaction(block)
transaction: { Any | Future(Result(Any)) }

block をトランザクションで評価する。Ok → commit、Err / panic → rollback。

>>> (db.transaction { tx | tx.exec("insert into t values (1)")!?; Ok(()) })!