FreeBSD Manual Pages
KSQL_TRANS_OPEN(3) Library Functions Manual KSQL_TRANS_OPEN(3) NAME ksql_trans_exclopen, ksql_trans_open, ksql_trans_singleopen -- open a database transaction LIBRARY library "ksql" SYNOPSIS #include <sys/types.h> #include <stdint.h> #include <ksql.h> enum ksqlc ksql_trans_exclopen(struct ksql *sql, size_t id); enum ksqlc ksql_trans_open(struct ksql *sql, size_t id); enum ksqlc ksql_trans_singleopen(struct ksql *sql, size_t id); DESCRIPTION The ksql_trans_exclopen(), ksql_trans_open(), and ksql_trans_singleopen() functions open transactions with different lock states. All functions accept sql, the database connection; and id, an identifier used in error reporting and in making sure that transaction calls are symmetric. Each of these functions must be followed by ksql_trans_commit(3) or ksql_trans_rollback(3). If ksql_trans_open() is used (a "DEFERRED" transaction, in SQLite terms), the database is locked only when the first database operation is invoked. The lock is read-shared (multiple readers, no writers) for a read operation and is upgraded to write-single (multiple readers, single writer) on a write. If ksql_trans_singleopen() is used ("IMMEDIATE"), the database is imme- diately locked in write-single mode. If ksql_trans_exclopen() ("EXCLUSIVE"), the database is opened in a write-exclusive lock, where only the calling process may write or read from the database. Recursive transactions are disallowed. RETURN VALUES This returns KSQL_NOTOPEN if the database connection is not open, KSQL_TRANS if a transaction is already open, KSQL_DB if errors occurred on the database, or KSQL_OK on success. SEE ALSO sqlite3_exec(3) FreeBSD Ports 14.quarterly April 3, 2018 KSQL_TRANS_OPEN(3)
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ksql_trans_open&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>