iii / worker
$worker

database

v0.2.0

Talk to PostgreSQL, MySQL, and SQLite from iii — query, execute, transactions, prepared statements, and change feeds.

  • macOS: arm64 · x64
  • Linux: arm64 · armv7 · x64
  • Windows: arm64 · x64 · x86

functions

10

database::commitTransaction

function

Commit and finalize an interactive transaction.

request
  • transaction_idstringrequired
response
  • committedbooleanrequired

database::beginTransaction

function

Open an interactive transaction; returns a handle to use with transactionQuery/transactionExecute/commitTransaction/rollbackTransaction.

request
  • dbstringrequired
  • isolationstring
  • timeout_msinteger· uint64min 0
response
  • transactionobjectrequired

    JSON wire envelope returned by `beginTransaction`.

    • expires_atstring· date-timerequired
    • idstringrequired

database::execute

function

Run a write statement (INSERT/UPDATE/DELETE/DDL).

request
  • dbstringrequired
  • paramsunknown[]
  • returningstring[]
  • sqlstringrequired
response
  • affected_rowsinteger· uint64requiredmin 0
  • last_insert_idstring
  • returned_rowsobject[]required
    empty object

database::transactionQuery

function

Run a read-only SQL query inside an interactive transaction.

request
  • paramsunknown[]
  • sqlstringrequired
  • transaction_idstringrequired
response
  • columnsobject[]required
    • namestringrequired
    • typestringrequired
  • row_countinteger· uintrequiredmin 0
  • rowsobject[]required
    empty object

database::query

function

Run a read-only SQL query and return the result rows.

request
  • dbstringrequired
  • paramsunknown[]
  • sqlstringrequired
  • timeout_msinteger· uint64min 0
response
  • columnsobject[]required
    • namestringrequired
    • typestringrequired
  • row_countinteger· uintrequiredmin 0
  • rowsobject[]required
    empty object

database::rollbackTransaction

function

Rollback and finalize an interactive transaction.

request
  • transaction_idstringrequired
response
  • rolled_backbooleanrequired

database::prepareStatement

function

Prepare a parameterized statement once.

request
  • dbstringrequired
  • sqlstringrequired
  • ttl_secondsinteger· uint64min 0
response
  • handleobjectrequired
    • expires_atstring· date-timerequired
    • idstringrequired

database::transaction

function

Run a sequence of statements atomically.

request
  • dbstringrequired
  • isolationstring
  • statementsobject[]required
    • paramsunknown[]
    • sqlstringrequired
response
  • committedbooleanrequired
  • errorunknown
  • failed_indexinteger· uintmin 0
  • resultsobject[]
    • affected_rowsinteger· uint64requiredmin 0
    • rowsunknown[][]required

database::transactionExecute

function

Run a write statement inside an interactive transaction. BEGIN/COMMIT/ROLLBACK are rejected; use commit/rollbackTransaction.

request
  • paramsunknown[]
  • returningstring[]
  • sqlstringrequired
  • transaction_idstringrequired
response
  • affected_rowsinteger· uint64requiredmin 0
  • last_insert_idstring
  • returned_rowsobject[]required
    empty object

database::runStatement

function

Run a previously-prepared handle.

request
  • handle_idstringrequired
  • paramsunknown[]
response
  • columnsobject[]required
    • namestringrequired
    • typestringrequired
  • row_countinteger· uintrequiredmin 0
  • rowsobject[]required
    empty object

triggers

1

database::row-change

trigger

Postgres logical replication. Stubbed in v1.0 pending tokio-postgres replication API.

invocation
valueunknown
return
valueunknown