Expand description

This library provides the Rust implementation of the wasmcloud SQL database capability contract wasmcloud:sqldb.

The initial version of this interface supports executing sql queries (inserts, update, create table, etc.) and fetching data (select).

The api is intended to be independent of any specific relational database implementation (postgres, mysql, mariadb, sqlite, etc.).

For efficiency, query results are encoded in Compact Binary Object Representation CBOR, a language-neutral format. CBOR is designed to be an extensible, language-neutral, about 50-70% denser than JSON, and suitable for constrained environments (low cpu and memory requirements). Parsers are simple to write, and libraries are available in several languages.

This interface currently does not support:

  • transactions
  • streaming results
  • prepared statements

Re-exports

Structs

  • Metadata about a Column in the result set
  • Result of an Execute operation
  • Result of a query
  • Detailed error information from the previous operation
  • SqlDbSender sends messages to a SqlDb service SqlDb - SQL Database connections To use this capability, the actor must be linked with the capability contract “wasmcloud:sqldb” client for sending SqlDb messages

Constants

Traits

  • SqlDb - SQL Database connections To use this capability, the actor must be linked with the capability contract “wasmcloud:sqldb” wasmbus.contractId: wasmcloud:sqldb wasmbus.providerReceive

Type Aliases

  • List of columns in the result set returned by a Query operation
  • An optional list of arguments to be used in the SQL statement. When a statement uses question marks ‘?’ for placeholders, the capability provider will replace the specified arguments during execution. The command must have exactly as many placeholders as arguments, or the request will fail. The members are CBOR encoded.