OINODbBunSqlite constructor
database parameters
ReadonlynameName of the database
Coerce a data value into a bun:sqlite bind-parameter value. bun:sqlite only accepts
number, bigint, string, Buffer/Uint8Array and null, so Date is converted to an ISO
string and boolean to 1/0.
data value to bind
native type name for the table column
Connect to database.
Connect to database.
Handle a column schema request. Supports GET (fetch column schema), POST (add column) and DELETE (drop column). PUT is not supported and throws.
HTTP method of the request (GET, POST, DELETE)
name of the table
name of the column (for GET/DELETE)
Optionalbody: stringrequest body as JSON string (for POST)
Handle a table schema request. Supports GET (fetch schema), POST (create table) and DELETE (drop table). PUT is not supported and throws.
HTTP method of the request (GET, POST, DELETE)
name of the table
Optionalbody: stringrequest body as JSON string (for POST)
Resolve the optimal native (SQL) type for a serialized field schema.
serialized field schema
Get the schema fields of a table as OINODataFields (without any API-level field filtering).
name of the table
Get the names of all user (base) tables in the database schema, excluding system tables and views.
Initialize a data model for an API by fetching the schema fields (via getSchemaFields)
and applying API-level field filtering and date-handling parameters.
api which data model to initialize.
Parse a single SQL result value for serialization using the context of the native data type.
data from serialization
native type name for table column
Print a single data value from serialization using the context of the native data type with the correct SQL escaping.
data from sql results
native type name for table column
Print a column name with correct SQL escaping.
name of the column
Print a bind-parameter placeholder for the given zero-based parameter index (SQLite ?).
zero-based parameter index
Print SQL ADD COLUMN statement.
name of the table
field to add
Print SQL CREATE TABLE statement. In SQLite AUTOINCREMENT is only valid as part of an inline
INTEGER PRIMARY KEY AUTOINCREMENT single-column declaration, so an auto-increment primary key
is emitted inline instead of via a separate PRIMARY KEY (...) table constraint.
name of the table
fields of the table
Print SQL DROP COLUMN statement.
name of the table
name of the column
Print SQL DROP TABLE statement.
name of the table
Print SQL select statement with DB specific formatting.
The name of the table to select from.
The columns to be selected.
The values to be inserted.
OptionalreturnIdFields: string[]the id fields to return if returnIds is true (if supported by the database)
Print SQL select statement with DB specific formatting.
The name of the table to select from.
The columns to be selected.
The WHERE clause to filter the results.
The ORDER BY clause to sort the results.
The LIMIT clause to limit the number of results.
The GROUP BY clause to group the results.
Print a single string value as valid sql literal
string value
Print a table name using database specific SQL escaping.
name of the table
Execute a parameterized statement, binding its values as positional ? parameters.
statement (SQL text + ordered bind values) to execute
Validate connection to database is working.
Implementation of BunSqlite-database.